Tomcat、JBoss和weblogic异同

来源:互联网 发布:梦三国2mac版本 编辑:程序博客网 时间:2024/06/08 14:01

Tomcat是Apache基金会提供的Servlet容器,它支持JSP, Servlet和JDBC等J2EE关键技术,所以用户可以用Tomcat开发基于数据库,Servlet和JSP页面的Web应用,这是没有问题的。但是,Tomcat却不是EJB容器;也就是说,Tomcat不支持J2EE的重要技术之一,EJB。那么,使用EJB组件开发的Web应用程序就无法在Tomcat下面运行。众所周知,EJB是分布式应用程序的核心技术,所以说凡是需要使用EJB来开发的应用(例如,银行、电信等大型的分布式应用系统)就不能用Tomcat了。这也就是很多公司不选择Tomcat的原因。不过Tomcat配合jboss和apache可以实现j2ee应用服务器功能。诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。

至于支持EJB的应用服务器,Weblogic( Oracle), WebSphere(IBM)和JBoss( Redhat)都是符合J2EE规范的EJB容器,所以都可以用来开发大型的分布式应用程序。
所以,原则上来说,只要你要开发基于EJB组件的应用,上述三种任选一个都是可以的。唯一的区别是,Weblogic和WebSphere都是付费的,JBoss是开源免费的。
很多公司为了省钱,选择了JBoss作为应用服务器,但是,开源免费也就意味着厂商不会为终端用户直接负责;

WebLogic是美国bea公司出品的一个application server,确切的说是一个基于Javaee架构的中间件,纯java开发的,最新版本WebLogic Server 9.0是迄今为止发布的最卓越的BEA应用服务器。BEA WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中。完全遵循J2EE 1.4规范。对业内多种标准的全面支持,包括EJB、JSB、JMS、JDBC、XML和WML,使Web应用系统的实施更为简单。

JBoss是全世界开发者共同努力的成果,一个基于J2EE的开放源代码的应用服务器。 因为JBoss代码遵循LGPL许可,你可以在任何商业应用中免费使用它,而不用支付费用。JBoss支持EJB 1.1和EJB 2.0 EJB3.0的规范,它是一个管理EJB的容器和服务器。类似于Sun’s J2SDK Enterprise Edition(J2EE),JBoss的目标是一个源代码开放的J2EE环境。但是JBoss核心服务仅是提供EJB服务器。JBoss不包括serverlers/JSP page 的WEB容器,当然可以和Tomcat或Jetty绑定使用。
JBoss还具有如下六大优点:
1、JBoss是免费的,开放源代码J2EE的实现,它通过LGPL许可证进行发布。
2、JBoss需要的内存和硬盘空间比较小。
3、安装非常简单。先解压缩JBoss打包文件再配置一些环境变量就可以了。
4、JBoss能够”热部署”,部署BEAN只是简单拷贝BEAN的JAR文件到部署路径下就可以了。如果没有加载就加载它;如果已经加载了就卸载掉,然后LOAD这个新的。
5、JBoss与Web服务器在同一个Java虚拟机中运行,Servlet调用EJB不经过网络,从而大大提高运行效率,提升安全性能。
6、用户可以直接实施J2EE-EAR,而不是以前分别实施EJB-JAR和Web-WAR,非常方便。

//Apache与Tomcat的区别

APACHE是一个web服务器环境程序 启用他可以作为web服务器使用 不过只支持静态网页. 但asp,php,cgi,jsp等动态网页的就不行.
如果要在APACHE环境下运行jsp 的话就需要一个解释器来执行jsp网页, 而这个jsp解释器就是TOMCAT, 为什么还要JDK呢?因为jsp需要连接数据库的话就要jdk来提供连接数据库的驱程,所以要运行jsp的web服务器平台就需要APACHE+TOMCAT+JDK 整合的好处是:如果客户端请求的是静态页面,则只需要Apache服务器响应请求如果客户端请求动态页面,则是Tomcat服务器响应请求因为jsp是服务器端解释代码的,这样整合就可以减少Tomcat的服务开销 .
apache是web服务器,tomcat是应用(java)服务器,它只是一个servlet(jsp也翻译成servlet)容器,可以认为是apache的扩展。
Apache:普通服务器,本身只支持html即普通网页,它是html容器,功能像IIS一样
tomcat:解释java程序(jsp,serverlet),它是是jsp/servlet容器,用于发布JSP及JAVA的
apache是一辆卡车,上面可以装一些东西如html等。但是不能装水,要装水必须要有容器(桶),tomcat就是一个桶(装像JAVA这样的水),而这个桶也可以不放在卡车上。