from tomcat to glassfish
- 格式:pdf
- 大小:762.14 KB
- 文档页数:40
Tomcat部署Web应用方式总结在Tomcat中部署Java Web应用程序有两种方式:静态部署和动态部署。
在下文中$CATALINA_HOME指的是Tomcat根目录。
一、静态部署静态部署指的是咱们在效劳器启动之前部署咱们的程序,只有当效劳器启动以后,咱们的Web应用程序才能访问。
以下3种方式都能够部署:(以PetWeb项目为例说明,PetWeb目录假设是F:/PetWeb)1.利用Tomcat自动部署将PetWeb目录拷贝到$CATALINA_HOME/webapps下,然后启动效劳器就能够够了,Tomcat启动时将自动加载应用。
访问地址如下:这种方式比较简单,可是web应用程序必需在webapps目录下。
Tomcat的Webapps目录是Tomcat默许的应用目录,当效劳器启动时,会加载所有那个目录下的应用。
2.修改文件部署这种方式能够没必要将PetWeb目录拷贝到webapps下,直接在F:/部署。
方式如下,更改$CATALINA_HOME/conf/文件,找到以下内容:Xml代码:1.<Context path ="/Pet"reloadable ="false"docBase ="F:/PetWeb"workDir="d:/Mywebapps/emp" />path:是访问时的根地址,表示访问的途径;如上述例子中,访问该应用程序地址如下:reloadable:表示能够在运行时在classes与lib文件夹下自动加载类包。
其中reloadable="false"表示当应用程序中的内容发生更改以后效劳器可不能自动加载,那个属性在开发时期通常都设为true,方便开发,在发布时期应该设置为false,提高应用程序的访问速度。
docbase:表示应用程序的途径,注意斜杠的方向“/”。
Glassfish安装部署详解.txt精神失常的疯子不可怕,可怕的是精神正常的疯子!1。
下载,安装电脑上必须预先安装Jdk5 or Jdk6,并且设置JAVA_HOME环境变量。
从Sun的网站上下载GlassFish v2.1 final build,是一个jar文件。
下载后运行:F:\>java -Xmx256m -jar glassfish-installer-v2ur2-b04-windows.jar如果这里不加上-Xmx256m,很有可能会报OutOfMemoryException。
这个命令会产生一个名为glassfish的目录。
在glassfish目录下运行:F:\glassfish>lib\ant\bin\ant -f setup.xml如果最后能看到“BUILD SUCCESSFUL”,就说明GlassFish已经安装成功了。
GlassFish会建立一个名为“domain1“的域。
打开setup.xml文件我们可以看到默认的配置:Xml代码如果想自定义domain name, user, password or ports,可以手动修改这个文件后再进行安装。
2。
启动GlassFish服务器将%glassfish_home%\bin目录添加到path环境变量中。
在任意目录下键入asadminstart-domain即可启动default domain(domain1)。
成功启动后在http://localhost:8080/可以看到服务器欢迎页面。
3。
使用admin consoleadminconsole是一个基于web的服务器管理和配置平台。
在浏览器中键入http://localhost:4848就可以看到登陆页面。
使用setup.xml中定义的user & password 即可登陆。
点击左侧树形结构上的节点可以在右侧窗口察看相应的管理项目。
Applications:管理domain中部署的应用。
tomcat 项目迁移到weblogic本篇文章主要介绍了"tomcat 项目迁移到weblogic",主要涉及到tomcat 项目迁移到weblogic方面的内容,对于tomcat 项目迁移到weblogic感兴趣的同学可以参考一下。
【藏】Spring与weblogic jndi集成至于如何配置hibernate,就和平时该怎么配置就怎么配置了。
虽然spring本身是可以直接使用jndi来进行获取一些对象,但是在和w eblogic集成的时候往往还是容易出现问题(在w eb应用的时候出现问题的可能性不大,因为container已经做了很多事情了.)但是在ide或者其他的应用环境下(不同的jv m的时候),通常找不到provider_ur l等属性造成无法找到jndi.修改配置文件如下:<!-- 通过jndi的方式来调用datasource,即使不一定是在j2ee环境中也可以正常使用默认情况下,如果没有指定,"java:comp/env/"将放在后面jndi名称前面--><bean id="dataSource" class="or g.springframew ork.jndi.JndiObjectFactoryBean"><property name="jndiName"><value>jdbc/my Datasource</value></property><!-- 如果你不想使用'java:comp/env/'前缀的话请设置下面的值为true, 默认值为false --> <property name="resourceRef"><value>false</value></property><property name="jndiEnvironment"><props><!-- The value of Context.PROV IDER_URL --><prop key="java.naming.provider.url">t3://localhost:7001</prop><prop key="java.naming.factory.initial">w eblogic.jndi.WLInitialContextFactory</prop></props></property></bean>注意在设置的时候由于不在同一个jv m里面,所以一定要设置provider.url和factory.initial的属性值,否则会出现NoInitialContextE xception的异常出现.此外如果和其他的应用服务器集成的话可能不只是要设置上面的两个属性,还要设置相关的其他属性。
Java集群可以通过多种方式实现,以下是一些常见的实现方式:
1. Java应用服务器集群:使用Java应用服务器(如Tomcat、Jetty、GlassFish等)构建集群,多个应用服务器节点可以部署在不同的物理或虚拟服务器上,通过负载均衡器进行流量分发,实现高可用性和可扩展性。
2. Java消息队列集群:使用Java消息队列(如RabbitMQ、Kafka 等)构建集群,多个消息队列节点可以部署在不同的物理或虚拟服务器上,通过负载均衡器进行流量分发,实现高可用性和可扩展性。
3. Java分布式缓存集群:使用Java分布式缓存(如Redis、Memcached等)构建集群,多个缓存节点可以部署在不同的物理或虚拟服务器上,通过负载均衡器进行流量分发,实现高可用性和可扩展性。
4. Java数据库集群:使用Java数据库(如MySQL、Oracle等)构建集群,多个数据库节点可以部署在不同的物理或虚拟服务器上,通过负载均衡器进行流量分发,实现高可用性和可扩展性。
5. Java负载均衡集群:使用Java负载均衡器(如Nginx、HAProxy 等)构建集群,多个负载均衡器节点可以部署在不同的物理或虚拟服务器上,通过负载均衡器进行流量分发,实现高可用性和可扩展性。
无论采用哪种方式实现Java集群,都需要考虑以下因素:
1. 负载均衡:如何将请求分发到不同的节点上,以实现负载均衡和容错。
2. 数据一致性:如何保证不同节点之间的数据一致性,以避免数据冲突和丢失。
3. 通信机制:如何实现不同节点之间的通信和协调,以完成分布式任务。
4. 安全性:如何保证集群的安全性,防止攻击和数据泄露。
5. 可维护性:如何维护和管理集群的稳定性和可用性。
GlassFish是开源的Java EE5服务器,它有它⾃⼰独特的技术特性如:HTTP引擎Grizzly,JMX(Java Management Extensions)技术,Java DB,TopLink,JSF(Java Server Face) Templating,Clustering(集群),JBI(Java Business Integration)等等。
1.GlassFish的安装 GlassFish的安装不同于Tomcat,JBoss或Weblogic等服务器,它需要基于⼆进制⽂件来安装,并且需要JDK5.0以上版本。
从官⽅站下载GlassFish安装⽂件,你会发现它是⼀个。
jar格式的⽂件,把它重命名为glassfish.jar,把它放到⼀个硬盘根⽬录下,如:/D. *打开windows的命令⾏,输⼊:java -XMx256m -jar glassfish.jar然后回车。
-Xmx256m是为了安全考虑防⽌内存溢出的错误。
*从命令⾏进⼊D:/glassfish⽬录下,输⼊:lib\ant\bin\ant -f setup.xml ,这个是利⽤glassfish⾃⾝携带的ant⼯具进⾏安装。
*输⼊:lib\ant\bin\ant -f setup-cluster.xml进⾏glassfish的集群安装。
2.GlassFish的启动和关闭 启动GlassFish:进⼊到GlassFish的⽬录D:\glassfish\bin,运⾏asadmin.bat⽂件,这时会启动GlassFish的命令,输⼊:start-domain 或者start-domain domain1,(因为glassfish安装时都会默认安装⼀个域⽬录⽂件夹名为domain1,如果我们已经在命令⾏中新建了域⽬录domain2,我们可以⽤start-domain domain2打开服务器)。
然后提⽰输⼊⽤户名:admin,密码:adminadmin然后服务器会提⽰你已经登陆成功。
GlassFish 命令行操作本文根据GlassFish3撰写,不过经测试,GlassFish4也适用,GlassFish是一款强悍的J2EE 应用服务器,支持完整的J2EE 标准,而且开源免费,如果服务器配置不是特别低,若4G 以上内存我推荐使用GlassFish,系统配置低,且仅使用JSP/JavaBean/Servlet的得话,还是用Tomcat要好些(占内存恐怕只有GlassFish 的1/10)。
GlassFish 有Open Source GlassFish 和Oracle GlassFish 两个版本,Open Source GlassFish 全开源,可任意使用,Oracle GlassFish 则需要遵守OTN 许可协议,可获得全功能无限期测试,拥有许可证才能用于生产,两款相似度超过99%,Oracle GlassFish 有一些性能调优的设置,但这些设置在Open Source GlassFish 中可参考手册直接修改配置文件,也可以达相同的目的。
Open Source GlassFish 可由/进行下载,下载的是安装版的话,基本上以下内容您可以略过,但如果您下载的是ZIP版,UNIX或者Windows下,操作基本一样,不过在安装之前先配置Java环境,本文不讨论。
Windows 下,解压ZIP 包到X:\glassfish3下,Unix/FreeBSD解压至/usr/local/glassfish3 目录下,Windows进入GlassFish的bin目录运行asadmin,FreeBSD下运行./asadmin,进入GlassFish控制台,Windows 和FreeBSD 的asadmin 的进入只是形式的不同,本质没区别。
# 创建一个domain (ZIP 解压开,已经默认有一个domain1),另:在修改了管理员名称后会提示设置密码,否则会略过设置密码。
create-domain domain1# 删除一个domain,若有文件需要备份删除前请检查清楚,因为整个domain 目录会被直接端掉,而且没有回收站。
Web中间件常见安全漏洞总结今天看到⼀篇公众号⽂章写的关于中间件漏洞的整理,⾥⾯有部分是我不知道的,转载⼀下,第⼀章:IISIIS 6 解析漏洞IIS 7 解析漏洞PUT任意⽂件写⼊IIS短⽂件漏洞HTTP.SYS远程代码执⾏ (MS15-034)RCE-CVE-2017-7269第⼆章:Apache未知扩展名解析漏洞AddHandler导致的解析漏洞Apache HTTPD 换⾏解析漏洞(CVE-2017-15715)第三章:NginxNginx配置⽂件错误导致的解析漏洞Nginx 空字节任意代码执⾏漏洞Nginx ⽂件名逻辑漏洞(CVE-2013-4547)Nginx 配置错误导致的安全问题第四章:TomcatTomcat 任意⽂件写⼊(CVE-2017-12615)Tomcat 远程代码执⾏(CVE-2019-0232)Tomcat + 弱⼝令 && 后台getshell漏洞Tomcat manager App 暴⼒破解第五章:JBossJBoss 5.x/6.x 反序列化漏洞(CVE-2017-12149)JBoss JMXInvokerServlet 反序列化漏洞JBoss EJBInvokerServlet 反序列化漏洞JBoss <=4.x JBossMQ JMS 反序列化漏洞(CVE-2017-7504)Administration Console 弱⼝令JMX Console未授权访问第六章:weblogicXMLDecoder 反序列化漏洞(CVE-2017-10271 & CVE-2017-3506)Weblogic wls9_async_response,wls-wsat 反序列化远程代码执⾏漏洞(CVE-2019-2725)Weblogic WLS Core Components 反序列化命令执⾏漏洞(CVE-2018-2628)Weblogic 任意⽂件上传漏洞(CVE-2018-2894)Weblogic SSRF漏洞(CVE-2014-4210)Weblogic 弱⼝令 && 后台getshell第七章:GlassFishGlassFish Directory Traversal(CVE-2017-1000028)GlassFish 后台Getshell第⼋章:WebSphereJava反序列化(CVE-2015-7450)弱⼝令 && 后台Getshell1、IISIIS是Internet Information Services的缩写,意为互联⽹信息服务,是由微软公司提供的基于运⾏Microsoft Windows的互联⽹基本服务。
java常⽤的中间件tomcatWeblogicJBOSSColdfusionWebsphereGlassFish⼀般本地开发的话建议使⽤tomcat。
linux系统建议使⽤jetty或apache hpptd⼤型的项⽬就⽤JBOSS或webloigc⼩项⽬,或者是个⼈开发tomcat ⼤项⽬或者商业项⽬⼀般采⽤:weblgoic/webshere其他的还有jboss、glasshfish等⼀些⽰例项⽬或者⼩项⽬常采⽤jettytomcat , jboss, weblogic, websphere ⼀般项⽬tomcat就可以了Tomcat是Sun的JSWDK(JavaServer Web Development Kit)中Servlet的运⾏环境(servlet容器)。
Tomcat是Apache Jakarta软件组织的⼀个⼦项⽬,Tomcat是⼀个JSP/Servlet容器,它是在SUN公司的JSWDK(Java Server Web Development Kit)基础上发展起来的⼀个JSP和Servlet规范的标准实现,使⽤Tomcat可以体验JSP和Servlet的最新规范。
经过多年的发展,Tomcat不仅是JSP和Servlet规范的标准实现,⽽且具备了很多商业Java Servlet容器的特性,并被⼀些企业⽤于商业⽤途。
JBoss是⼀个运⾏EJB的J2EE应⽤服务器。
它是开放源代码的项⽬,遵循最新的J2EE规范。
从JBoss项⽬开始⾄今,它已经从⼀个EJB容器发展成为⼀个基于的J2EE的⼀个web 操作系统(operating system for web),它体现了J2EE规范中最新的技术WebLogic服务器是企业级的应⽤服务器,⽀持EJB, 集群以及 ERP(企业资源计划)的连通性,开发公司:BEA。
WebSphere产品系列是IBM公司⼀套典型的电⼦商务应⽤开发⼯具及运⾏环境1.Java中间件的定义 在Java web开发的演进与进化中,我们对于消息系统,数据库,服务化接⼝的抽象等,涉及数据分离的过程中,在分离过程中,就会涉及到分离后系统间,数据库间的交互。