`

【转】Apache、Tomcat、JBoss、WebLogic的区别与关系

 
阅读更多
概述:

Apache:全球应用最广泛的http服务器,免费,出自apache基金组织  
Tomcat:应用也算非常广泛的web服务器,支持部分j2ee,免费,出自apache基金组织  
JBoss:开源的应用服务器,比较受人喜爱,免费(文档要收费)  
Weblogic:应该说算是业界第一的app   server,全部支持j2ee1.4,  对于开发者,有免费使用一年的许可证。

Jboss也支持j2ee
JBoss和WebLogic都含有Jsp和Servlet容器,也就可以做web容器,
JBoss和WebLogic也包含EJB容器,是完整的J2EE应用服务器
Tomcat 只能做jsp和servlet的container


Jboss内嵌Tomcat...  处理静态页面Jboss的速度要比较快。
Jboss作为应用服务器,而Tomcat做web服务器。


一、Tomcat

         Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,它是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。
         Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。
         Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。
         这里的诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。
         Tomcat 最新版本是4.0x.4.0x与3.x的架构不同,而是重新设计的。Tomcat4.0x中采用了新的Servlet容器:Catalina,完整的实现了Servlet2.3和Jsp1.2规范。由于Java的跨平台特性,基于Java的Tomcat也具有跨平台性。
         与传统的桌面应用程序不同,Tomcat中的应用程序是一个WAR(Web Archive)文件。WAR是Sun提出的一种Web应用程序格式,与JAR类似,也是许多文件的一个压缩包。这个包中的文件按一定目录结构来组织:通常其根目录下包含有Html和Jsp文件或者包含这两种文件的目录,另外还会有一个WEB-INF目录,这个目录很重要。通常在WEB-INF目录下有一个web.xml文件和一个classes目录,web.xml是这个应用的配置文件,而classes目录下则包含编译好的Servlet类和Jsp或Servlet所依赖的其它类(如JavaBean)。通常这些所依赖的类也可以打包成JAR放到WEB-INF下的lib目录下,当然也可以放到系统的CLASSPATH中,但那样移植和管理起来不方便。
         在Tomcat中,应用程序的部署很简单,你只需将你的WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。你在浏览器中访问这个应用的Jsp时,通常第一次会很慢,因为Tomcat要将Jsp转化为Servlet文件,然后编译。编译以后,访问将会很快。另外Tomcat也提供了一个应用:manager,访问这个应用需要用户名和密码,用户名和密码存储在一个xml文件中。通过这个应用,辅助于Ftp,你可以在远程通过Web部署和撤销应用。当然本地也可以。
         Tomcat不仅仅是一个Servlet容器,它也具有传统的Web服务器的功能:处理Html页面。但是与Apache相比,它的处理静态Html的能力就不如Apache.我们可以将Tomcat和Apache集成到一块,让Apache处理静态Html,而Tomcat处理Jsp和Servlet.这种集成只需要修改一下Apache和Tomcat的配置文件即可。
         另外,Tomcat提供Realm支持。Realm类似于Unix里面的group.在Unix中,一个group对应着系统的一定资源,某个group不能访问不属于它的资源。Tomcat用Realm来对不同的应用(类似系统资源)赋给不同的用户(类似group)。没有权限的用户则不能访问这个应用。Tomcat提供三种Realm,1:JDBCRealm,这个Realm将用户信息存在数据库里,通过JDBC获得用户信息来进行验证。2:JNDIRealm,用户信息存在基于LDAP的服务器里,通过JNDI获取用户信息。3:MemoryRealm,用户信息存在一个xml文件里面,上面讲的manager应用验证用户时即使用此种Realm.通过Realm我们可以方便地对访问某个应用的客户进行验证。
         在Tomcat4中,你还可以利用Servlet2.3提供的事件监听器功能,来对你的应用或者Session实行监听。Tomcat也提供其它的一些特征,如与SSL集成到一块,实现安全传输。还有Tomcat也提供JNDI支持,这与那些J2EE应用服务器提供的是一致的。说到这里我们要介绍一下通常所说的应用服务器(如WebLogic)与Tomcat有何区别。应用服务器提供更多的J2EE特征,如EJB,JMS,JAAS等,同时也支持Jsp和Servlet.而Tomcat则功能没有那么强大,它不提供EJB等支持。但如果与JBoss(一个开源的应用服务器)集成到一块,则可以实现J2EE的全部功能。既然应用服务器具有Tomcat的功能,那么Tomcat有没有存在的必要呢?事实上,我们的很多中小应用不需要采用EJB等技术,Jsp和Servlet已经足够,这时如果用应用服务器就有些浪费了。而Tomcat短小精悍,配置方便,能满足我们的需求,这种情况下我们自然会选择Tomcat.
         基于Tomcat的开发其实主要是Jsp和Servlet的开发,开发Jsp和Servlet非常简单,你可以用普通的文本编辑器或者IDE,然后将其打包成WAR即可。我们这里要提到另外一个工具Ant,Ant也是Jakarta中的一个子项目,它所实现的功能类似于Unix中的make.你需要写一个build.xml文件,然后运行Ant就可以完成xml文件中定义的工作,这个工具对于一个大的应用来说非常好,我们只需在xml中写很少的东西就可以将其编译并打包成WAR.事实上,在很多应用服务器的发布中都包含了Ant.另外,在Jsp1.2中,可以利用标签库实现Java代码与Html文件的分离,使Jsp的维护更方便。
         Tomcat也可以与其它一些软件集成起来实现更多的功能。如与上面提到的JBoss集成起来开发EJB,与Cocoon(Apache的另外一个项目)集成起来开发基于Xml的应用,与OpenJMS集成起来开发JMS应用,除了我们提到的这几种,可以与Tomcat集成的软件还有很多。

二、Jboss

         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,非常方便。

JBoss的安装和配置可以直接拷贝使用,但是要改动 %JBoss-HOME%binrun.bat里JAVA-HOME的设置,改成本机JDK的目录。运行run.bat来启动JBoss
关闭JBoss:关闭JBoss的 DOS 窗口或按"CTRL + C"。

补充
1、JBoss的默认端口是8080
2、对于NT和Win2000系统如果你要安装NT或Win2000服务的话,可以把JBoss加在系统服务中,避免你每次需要到JBoss目录下运行run.bat命令,只是当系统启动时,自动启动JBoss服务器。


三、Weblogic

         WebLogic是美国bea公司出品的一个application server确切的说是一个基于j2ee架构的中间件,webserver是用来构建网站的必要软件用来解析发布网页等功能,它是用纯java开发的。weblogic本来不是由bea发明的,是它从别人手中买过来,然后再加工扩展。目前weblogic在世界application server市场上占有最大的份额,其他还有象IBM的websphere,免费的tomcat、resin等中间件。
        BEA WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中。
         BEA WebLogic Server拥有处理关键Web应用系统问题所需的性能 、可扩展性和高可用性。与BEA WebLogic Commerce ServerTM配合使用, BEA WebLogic Server可为部署适应性个性化电子商务应用系统提供完善的解决方案。
         BEA WebLogic Server具有开发和部署关键任务电子商务Web应用系统 所需的多种特色和优势,包括:
1)领先的标准
         对业内多种标准的全面支持,包括EJB、JSB、JMS、JDBC、XML和WML,使Web应用系统的实施更为简单,并且保护了投资,同时也使基于标准的解决方案的开发更加简便。
2)无限的可扩展性
         BEA WebLogic Server以其高扩展的架构体系闻名于业内,包括客户机连接的共享、资源pooling以及动态网页和EJB组件群集。
3)快速开发
         凭借对EJB和JSP的支持,以及BEA WebLogic Server 的Servlet组件架 构体系,可加速投放市场速度。这些开放性标准与WebGain Studio配合时,可简化开发,并可发挥已有的技能,迅速部署应用系统。
4)部署更趋灵活
         BEA WebLogic Server的特点是与领先数据库、操作系统和Web服务器 紧密集成。
5)关键任务可靠性
         其容错、系统管理和安全性能已经在全球数以千记的关键任务环境中得以验证。
6)体系结构
         BEA WebLogic Server是专门为企业电子商务应用系统开发的。企业电子商务应用系统需要快速开发,并要求服务器端组件具有良好的灵活性和安全性,同时还要支持关键任务所必需的扩展、性能、和高可用性。BEA WebLogic Server简化了可移植及可扩展的应用系统的开发,并为其它应用 系统和系统提供了丰富的互操作性。
         凭借其出色的群集技术,BEA WebLogic Server拥有最高水平的可扩展 性和可用性。BEA WebLogic Server既实现了网页群集,也实现了EJB组件 群集,而且不需要任何专门的硬件或操作系统支持。网页群集可以实现透明的复制、负载平衡以及表示内容容错,如Web购物车;组件群集则处理复杂的复制、负载平衡和EJB组件容错,以及状态对象(如EJB实体)的恢复。
         无论是网页群集,还是组件群集,对于电子商务解决方案所要求的可扩展性和可用性都是至关重要的。共享的客户机/服务器和数据库连接以及数据缓存和EJB都增强了性能表现。这是其它Web应用系统所不具备的
分享到:
评论

相关推荐

    Weblogic、Tomcat、Apache、JBoss、IIS之间的区别?

    Weblogic、Tomcat、Apache、JBoss、IIS之间的区别.Weblogic.Tomcat.Apache.JBoss?都基于java的基础架构??

    Tomcat-JBoss-Weblogic-Jetty的区别和介绍

    Tomcat应用也算非常广泛的web 服务器,支持部分j2ee,免费,出自 apache基金组织 JBoss开源的应用服务器,比较受人喜爱,免费(文档要收费) weblogic应该说算是业界第一的app server,全部支持j2ee1.4, 对于...

    java常用中间件.pdf

    tomcat , jboss, weblogic, websphere ⼀般项⽬tomcat就可以了 Tomcat是Sun的JSWDK(JavaServer Web Development Kit)中Servlet的运⾏环境(servlet容器)。Tomcat是Apache Jakarta软件组织 的⼀个⼦项⽬,Tomcat是⼀个...

    J2EE&Servlet.doc

    Tomcat(JAVA开源、6M),Glassfish、JBoss、Weblogic(1G) ② Tomcat Tomcat 6.0【安装版、绿色软件版】apache-tomcat6.tar.gz 服务器:1.就是一台主机 2.软件 ③ 文件夹 Bin:启动脚本、关闭脚本以及其他...

    tomcat配置

    说明:Tomcat服务器上一个符合J2EE标准的Web服务器,在tomcat中无法运行EJB程序,如果要运行可以选择能够运行EJB程序的容器WebLogic,WebSphere,Jboss等 Tomcat的下载: http://tomcat.apache.org/

    安全配置规范.zip

    华为公司出品,Apache、JBoss 、Tomcat 、WebLogic、Linux、Nginx、Resin 、solaris10、Sudo、windows 2003、windows 2008R2、windows 2012R2、Dopra Linux、风河Linux操作系统、GaussDB、MongoDB、Oracle DB、...

    apache-cxf-3.1.10.zip

    Apache CXF 是一个开放源代码框架...它允许创建高性能和可扩展的服务,您可以将这样的服务部署在 Tomcat 和基于 Spring 的轻量级容器中,以及部署在更高级的服务器上,例如 Jboss、IBM® WebSphere® 或 BEA WebLogic。

    POC bomber -资源

    POC bomber 的poc支持weblogic,tomcat,apache,jboss,nginx,struct2,thinkphp2x3x5x,spring,redis,jenkins,php语言漏洞,shiro,泛微OA,致远OA,通达OA等易受攻击组件的漏洞检测,支持调用dnslog平台检测...

    apache-cxf-3.1.6.rar

    Apache CXF 是一个开放源代码框架...它允许创建高性能和可扩展的服务,您可以将这样的服务部署在 Tomcat 和基于 Spring 的轻量级容器中,以及部署在更高级的服务器上,例如 Jboss、IBM® WebSphere® 或 BEA WebLogic。

    weblogic 安装转载

    因此服务器必须支持EJB容器,如WebLogic或JBoss等;而Tomcat只是纯Web服务器,因此不支持EJB。当然,apache组织也在开发自己的开源J2EE服务器,名字叫做Geronimo,目前已经有正式的版本面市,本章的示例则是基于...

    IOSG.net SVGChart

    名称:IOSG SVGChart R1.0 ...支持应用服务器-JRun/Bea Weblogic/IBM Websphere/Apache Tomcat/JBOSS/Lotus Domino R6 报价:3000RMB/站点 (详情请访问http://groups.msn.com/iosg上的技术白皮书)

    Tomcat7.0安装配置详细(图文)

    说明:Tomcat服务器上一个符合J2EE标准的Web服务器,在tomcat中无法运行EJB程序,如果要运行可以选择能够运行EJB程序的容器WebLogic,WebSphere,Jboss等 Tomcat的下载: http://tomcat.apache.org/  1.进入上面的...

    WEB服务器与应用服务器的区别.doc

    比如:Weblogic、Tomcat、Jboss。 web服务器比应用服务器简单。 WEB服务器与应用服务器的区别 1.WEB服务器: 理解WEB服务器,首先你要理解什么是WEB?WEB你可以简单理解为你所看到的HTML页面就是 WEB的数据元素,处理...

    常用J2EE应用服务器简介.docx

    不过Tomcat协作jboss和apache可以实现j2ee应用服务器功能 一般来说考虑stucts等架构tomcat就可以了,但假如考虑EJB的话,WebLogic是比较好的选择。 扩展性: 用WebLogic运行标准的java可能并不是最好的方式,...

    Linux 常用命令

    11. 启动、关闭WebLogic 12. 启动、关闭Tomcat 13. 启动、关闭JBOSS 14. 重启Apache 15. 修改apache字符集配置文件 16. 进入管理员 17. 进程 18. 文件夹操作 19. 查看文件 20. 编辑文件 21. 远程连接 22. 用户管理...

    安全基线套餐.zip

    根据各个文件和日常工作整理的安全基线套餐(系统+中间件+数据库),包含了linux、windows、mongodb、sql server、mysql、oracle、apache、iis、jboss、ngnix、tomcat、weblogic、websphere的安全基线标准

    202107 HW弹药库等合集.zip

    Apache-Tomcat Apereo-CAS Cacti Discuz Drupal ECshop Exchange exploits.png F5-BIG-IP FastAdmin Fastjson Gitlab Harbor JBoss Jellyfin Jenkins Jira Joomla Kibana Nacos Nexus phpMyAdmin SAP Spring ...

    CISP-PTE讲义.zip

    CISP-PTE认证教程讲义 001-linux操作系统安全V2.0 002-windows操作系统安全V2.0 003-数据库安全 ...013-Apache-finished 014-IIS 015-jboss 016-tomcat 017-weblogic(2) 018-web应用服务器安全加固

    Hyperic HQ 系统安装指南

    •应用服务器:BEA WebLogic,IBM WebSphere,JBoss,Apache Geronimo,Macromedia ColdFusion,Macromedia JRun,Microsoft .NET Runtime,Novell Silverstream,Tomcat,Caucho Resin •数据库:IBM DB2,...

    微信小程序实例-商场系统、前后端免费开源.zip

    很多人想找一套真正完全开源的微信小程序商城而找不到,现在我们团队经过整合GitHub开源代码后重磅对出此套完全开源程序。...WEB服务器:Weblogic、Tomcat、WebSphere、JBoss、Jetty 等 数据库服务器:Mysql5.8

Global site tag (gtag.js) - Google Analytics