zoukankan      html  css  js  c++  java
  • Apache/Tomcat/JBOSS/Jetty/Nginx/WebLogic/WebSphere之间的区别区别

    总结:Apache/Tomcat/JBOSS/Nginx区别 .

    1、Apache是Web服务器,Tomcat是应用(Java)服务器。Tomcat在中小型系统和并发访问用户不是很多的场合下被普遍使用。Apache支持静态页,Tomcat支持动态的。
    2、Jetty:Tomcat内核作为其Servlet容器引擎,并加以审核和调优.大中型系统可以应用。能够提供数据库连接池服务,还支持其他 Web 技术的集成,譬如PHP、.NET 两大阵营.
    3、JBoss是一个管理EJB的容器和服务器,但JBoss核心服务不包括支持servlet/JSP的WEB容器,一般与Tomcat或Jetty绑定使用。
    4、Nginx是目前性能最高的HTTP服务器。其特点是占有内存少,并发能力强。Nginx代码完全用C语言从头写成。

    所以:Apache--Nginx;Tomcat--Jetty;JBoss。这三组可以组合了。

    具体描述:

    一、Apache+Tomcat
    Apache支持静态页,Tomcat支持动态的,比如Servlet等,
      一般使用Apache+Tomcat的话,Apache只是作为一个转发,对JSP的处理是由Tomcat来处理的。
    Apche可以支持PHPcgiperl,但是要使用Java的话,你需要Tomcat在Apache后台支撑,将Java请求由Apache转发给Tomcat处理。
    Apache是Web服务器,Tomcat是应用(Java)服务器,它只是一个Servlet(JSP也翻译成Servlet)容器,可以认为是Apache的扩展,但是可以独立于Apache运行。

    这两个有以下几点可以比较的:
    ◆两者都是Apache组织开发的
    ◆两者都有HTTP服务的功能
    ◆两者都是免费的
      不同点:
    Apache是专门用了提供HTTP服务的,以及相关配置的(例如虚拟主机、URL转发等等)
    Tomcat是符合Java EE的JSP、Servlet标准下开发的一个JSP服务器:Tomcat在中小型系统和并发访问用户不是很多的场合下被普遍使用。

    二、Jetty

    而Jetty采用业界最优的开源Java Web引擎,将Java社区中下载量最大,用户数最多,标准支持最完备的Tomcat内核作为其Servlet容器引擎,并加以审核和调优。单纯的Tomcat性能有限,在很多地方表现有欠缺,如活动连接支持、静态内容、大文件和HTTPS等。除了性能问题,Tomcat的另一大缺点是它是一个受限的集成平台,仅能运行Java应用程序。企业在使用时Tomcat,往往还需同时部署Apache WebServer以与之整合。此配置较为繁琐,且不能保证性能的优越性。
    Jetty通过使用APR和Tomcat本地技术的混合模型来解决Tomcat的诸多不足。混合技术模型从最新的操作系统技术里提供了最好的线程和事件处理。结果,Jetty达到了可扩展性,性能参数匹配甚至超越了本地Apache HTTP服务器或者IIS。譬如Jetty能够提供数据库连接池服务,不仅支持 JSP 等 Java 技术,同时还支持其他 Web 技术的集成,譬如PHP、.NET 两大阵营。

    三、Nginx
    Nginx具有很高的稳定性。其它HTTP服务器,当遇到访问的峰值,或者有人恶意发起慢速连接时,也很可能会导致服务器物理内存耗尽频繁交换,失去响应,只能重启服务器。例如当前apache一旦上到200个以上进程,web响应速度就明显非常缓慢了。而Nginx采取了分阶段资源分配技术,使得它的CPU与内存占用率非常低。nginx官方表示保持10,000个没有活动的连接,它只占2.5M内存,所以类似DOS这样的攻击对nginx来说基本上是毫无用处的。就稳定性而言,nginx比lighthttpd更胜一筹。

    四、JBoss

    JBoss一个基于J2EE的开放源代码的应用服务器.JBoss是一个管理EJB的容器和服务器,但JBoss核心服务不包括支持servlet/JSP的WEB容器,一般与Tomcat或Jetty绑定使用。
    JBoss与Web服务器在同一个Java虚拟机中运行 JBoss运行后后台管理界面,Servlet调用EJB不经过网络,从而大大提高运行效率,提升安全性能。

    WebLogic、WebSphere、JBOSS、Tomcat之间的区别

    1:产品介绍:

    weblogic

      WebLogic是美国bea公司出品的一个application server确切的说是一个基于j2ee架构的中间件。BEA WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中。

    webSphere
      WebSphere是 IBM 的集成软件平台。它包含了编写、运行和监视全天候的工业强度的随需应变 Web 应用程序和跨平台、跨产品解决方案所需要的整个中间件基础设施,如服务器、服务和工具。WebSphere 提供了可靠、灵活和健壮的集成软件。

    JBoss
    JBoss是一个管理EJB的容器和服务器,支持EJB 1.1、EJB 2.0和EJB3.0的规范。但JBoss核心服务不包括支持servlet/JSP的WEB容器,一般与Tomcat或Jetty绑定使用。2006年,Jboss公司被Redhat公司收购。

    Tomcat
    Tomcat是Apache 软件基金会的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

    2:价位不同:

    JBoss与Tomcat的是免费的。

    WebLogic与WebSphere是收费的,而且价格不菲。

    3:开源性不同:

     JBoss与Tomcat的是完全开源的,而其他两个不是。
    

    4:对技术的支持:

      Tomcat不支持EJB,JBoss是实现了EJB容器,再集成了Tomcat。
    

    WebLogic与WebSphere都是对业内多种标准的全面支持,包括EJB、JSB、JMS、JDBC、XML和WML,使Web应用系统的实施更为简单,并且保护了投资,同时也使基于标准的解决方案的开发更加简便。

    5:扩展性的不同:

    WebLogic和WebSphere都是以其高扩展的架构体系闻名于业内,包括客户机连接的共享、资源 pooling以及动态网页和EJB组件群集。

    6:应用范围的区别:

    Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。

    WebLogic和WebSphere是商业软件,功能齐全强大,主要应用于大型企业的大型项目。

    JBOSS 主要应用于EJB服务的中小型公司。

    7:商业服务和技术支持的区别:

    因为JBoss和Tomcat都是开源免费的,所有它俩也就没有任何商业服务和技术支持,而WebLogic和WebSphere的技术文档和相关服务还是很到位,如果你的服务器哪一天出问题了,只要你能出的起钱,他们的技术工程师立刻就能出现在你面前。

    8:安全性问题

    因为JBoss和Tomcat都是开源的,所以它们的安全性相对来说比较低,万一应用服务器本身有什么漏洞,你是没办法向Apache索赔的。

    而WebLogic和WebSphere其容错、系统管理和安全性能已经在全球数以千记的关键任务环境中得以验证。

    9:与数据库的紧密结合性:

    如果硬件成本比软件成本高许多,那不如使用weblogic/Websphere。其中的道理太简单了,为什么电信/银行/移动之类的公司使用Oracle或DB2数据库,而不选用mysql。单靠tomcat是无法支持那么多的并发量,有钱的话还是选择商业产品。

    以上转自:https://blog.csdn.net/u014677702/article/details/83307809

    ===============================================================================================

    以下转自:https://blog.csdn.net/u014421556/article/details/51836664

    Tomcat、Weblogic、Jboss、WebSphere之间的区别和联系
    Websphere:
    这是ibm公司的网上的信息。更详细的信息可以访问网站:
    http://www-306.ibm.com/software/cn/websphere/
    WebSphere 产品家族和解决方案
    业务整合整合服务器提供了一套用于应用程序整合和业务流程自动化的中央基础设施。
    应用服务器应用服务器提供了运行互操作应用程序的平台。
    IBM Support for Apache Geronimo
    IBM Support for Apache Geronimo
    从 Apache Software Foundation 提供一个开源 J2EE 应用服务器
    WebSphere Application Server WebSphere Application Server
    为基础消息传递流和应用程序提供一个经济有效的整合基础平台
    WebSphere Application Server - Express
    为动态的随需应变应用程序提供 J2EE 和 Web 服务
    WebSphere Application Server Community Edition
    WebSphere Application Server Community Edition V1.1 是 IBM 支持的基于开源的应用服务器。
    WebSphere Extended Deployment WebSphere Extended Deployment
    WebSphere Extended Deployment V6.0 创建了随需应变的基础设施,此基础设施跨事务和长期运行两种工作负载。
    WebSphere Real Time WebSphere Real Time
    提供可预测的响应时间
    WebSphere Remote Server WebSphere Remote Server
    IBM WebSphere Remote Server V6.0 是领先的面向服务的架构(SOA)平台,可用于专门为存储级设备和应用程序提供集成和支持的远程托管分布式环境,无论过去、现在还是未来。
    WebSphere Remote Server for Retail
    为远程环境提供完整的集成应用服务器、数据库和消息传递平台
    数据和信息管理信息和数据管理软件提供了对任何环境中数据的存储、访问和分析。
    移动技术、语音技术和企业访问无线、普及和语音软件支持无线设备和移动设备之间的数据交换和语音交互。
    组织生产力门户与协作生产力软件提供即时消息传递、网上会议、协作门户和基于角色的环境。
    网络网络软件在用户和应用程序之间提供了集成的目录、连通性和安全性。
    软件开发软件开发工具用于设计和构建应用程序,支持开发和部署过程。
    门户 – 商务 – 个性化门户、商务和个性化软件支持业务开发、员工和客户环境。

    Weblogic:
    这是bea公司的网上的信息。更详细的信息可以访问网站:
    http://www.bea.com.cn/products/beawebLogic/index.jsp
    BEA WebLogic平台包括BEA WebLogic Server?、BEA WebLogic Portal?、BEA WebLogic Integration?、BEA WebLogic Workshop?、BEA JRockit?,是开发人员用服务来支持其应用程序的一流的应用程序平台套件。
    BEA WebLogic Server
    BEA WebLogic Server 是具有可伸缩性的企业级 Java Platform Enterprise Edition (Java EE) 应用程序服务器。WebLogic Server 基础结构支持多种类型的分布式应用程序的部署,也是生成基于 Service Oriented Architectures (SOA) 的应用程序的理想的基础。SOA 是一种设计方法论,其目标是最大限度地重复使用应用程序服务。
    WebLogic Server 完全实现了 Sun Microsystems Java EE 5.0 规范,提供了一组标准的 API 以用于创建分布式的 Java 应用程序,这些应用程序可访问多种服务,如数据库、消息传递服务和与外部企业系统的连接。最终用户客户端可使用 Web 浏览器客户端或 Java 客户端访问这些应用程序。请参阅编程模型。
    除了实现 Java EE 之外,WebLogic Server 可使企业在一个可靠、安全、具有高可用性和可伸缩性的环境中部署关键任务应用程序。当出现硬件故障或其他故障时,企业可通过这些功能配置 WebLogic Server 实例群集以分配负载并提供额外的容量。新的诊断工具允许系统管理员监视和调整已部署的应用程序的性能和 WebLogic Server 环境自身。还可以将 WebLogic Server 配置为自动监视和调整应用程序吞吐量而无需人工干预。广泛的安全功能会保护对服务的访问、保持企业数据安全和防止恶意攻击。
    BEA WebLogic Portal
    BEA WebLogic Portal 8.1简化了自定义门户的生产和管理,使用户能够利用共享的服务环境以最低的复杂性和最少的工作推广变更。
    BEA WebLogic Integration
    BEA WebLogic Integration 8.1提供了将其他情况下的两个完全不同的活动(应用程序集成和应用程序开发)融合为一个统一的业务整合解决方案。
    BEA JRockit 5.0 JDK
    使用BEA JRockit 5.0 Java Development Kit (JDK),Java开发人员能够将应用程序更快、更高效地部署到生产中,并以最少的配置获得最佳的性能。BEA WebLogic Express? 10.0
    BEA WebLogic Express 10.0 是一款功能强大、经济实惠的 Servlet 引擎,能够在最短时间内启动,并在 WebLogic? 产品系列上运行。使用 WebLogic Express 可以快速地开发和启动动态网站和基本 Web 应用程序,从而为您提供市场上最可靠的生产就绪部署。

    这是代理商的网上的信息:
    地址:http://www.soft366.com/research.asp?searchsoft=BEA WebLogic
    BEA WebLogic Platform
    您需要利用已有的IT资源获得竞争优势吗?通过让IT部门以逐个项目为基础全程参与应用基础结构建设,BEA Weblogic Platform简化了企业计算,能够更好地满足业务部...
    市场价:¥1800000元
    会员价:¥1000000元

    BEA WebLogic Portal
    在理想化的世界中,用户的每个门户8都应该能够快速构建,而且完全根据其访问者的要求量身定做。现在,BEA Weblogic Portal简化了定制门户的生产和管理,使用户...
    市场价:¥1140000元
    会员价:¥862524元

    BEA WebLogic Integration
    面对ERP、CRM、遗留应用、业务用户、供应链、合作伙伴,您怎样才能把所有内容清晰地加以整合?BEA WebLogic Integration 8.1 通过单一的解决方案,将业务流程管...
    市场价:¥1240000元
    会员价:¥940000元
    BEA WebLogic Server
    WebLogic Server 9.0 是迄今为止发布的最卓越的BEA应用服务器。它与J2EE 1.4完全兼容,通过交付高可靠性的、永不宕机的、可量测的、针对关键任务的整合解决方案...
    市场价:¥200000元
    会员价:¥160000元

    IBM WebSphere Application Server Processor License
    Websphere Enterprise Edition 市场价:¥200000元
    会员价:¥160000元

    WEBSPHERE APPLICATION SRVR NETWORK DEPLOYMENT PROCESSOR LIC
    Websphere ND Edition 市场价:¥300000元
    会员价:¥210000元

    Websphere:
    按照cpu和核数计算的。
    Weblogic:
    按照物理cpu数量计算。

    服务:
    Websphere:
    三种:
    1、 产品自带的电话支持。
    2、 现场支持,需要额外付费购买。
    3、 找总代级的代理商。
    Weblogic:
    两种:
    4、 电话。
    5、 邮件。
    没有现场支持。
    费用计算方式:产品报价的18%。
    首先,他们的共同之处是都是支持JSP的服务器软件。

    不同之处:
    Tomcat:是Apache Group Jakarta小组开发的一个免费服务器软件,适合于嵌入Apache中使用,而且,它的源代码是可以免费获得的,不足之处是它的配置十分麻烦,弄不好连Apche都会摊掉,而且有一些安全性的问题没有解决,初学者可以用它来调试JSP文件,但是用作商业应用的服务器就不太妥当了。

    BEA WebLogic Sever:是一款十分强大的服务器软件,配置比较简单,而且对JSP的扩展十分强大,附带了数据库的JDBC驱动程序,支持JHTML,是目前市场占有率最高的服务器,目前最新版本是6.1版,价格很贵,不过嘿嘿.....有破解版哦:)

    IBM WebSphere Application Server:是IBM的产品,功能很强大,而且有IBM的开发工具相配套,开发Web程序十分方便,不过价格上万元。

    Boss、Geronimo及Tomcat比较分析
    在开源的Java应用服务器领域,像JBoss、Tomcat及Apache的Geronimo,他们不仅仅是商业领域的领跑者,同时是技术领域的先行者。当然,所有的Java EE应用服务器的实现不尽相同,但其很多方面具有一定程度的可比性。本文对JBoss4.2、Geronimo 2及Tomcat 6三种开源的Java EE应用服务器,就他们的特性、部署及性能等方面进行一一比较。

    一、 前言
    当企业级的Java应用程序需要真正的应用部署时,Java EE应用服务器是必不可少的工具。研究表明,除了商业的应用服务器之外,开源的Java EE应用服务器开始成为很多Java企业级应用的最佳选择。而JBoss、Tomcat及Apache的Geronimo是其中最主流的开源Java EE应用服务器。而这三者中,尽管JBoss和Tomcat并非100%的实现了Java EE 5标准,但这二者占有的市场份额相对比较大。Geronimo是对Java EE 5标准100%的实现,正在快速的发展。如果读者想在Java EE领域找份像样的工作,对这三种开源的应用服务器应该达到比较熟悉的程度,并能在一定程度上进行比较区分。
    在本文中,对这三种主流的应用服务器,就其特性、部署及性能等方面进行比较。分析了他们各自的特色对该应用服务器的重要性,当然,也提供了一些如何选择适合项目的服务器的原则及建议。

    二、 特性比较
    表1就JBoss 4.2、Tomcat 6及Geronimo 2的特性进行全面的比较。请注意,表中用到的“部分支持”表述,表明该应用服务器并非完全的支持,需要安装一些额外包。而其中的“原则上支持”表述,表明该应用服务器需要第三方的安装包的支持。注:三种应用服务器均在Linux、Solaris、Windows及Mac OS X上进行过测试。
    表1.Java EE应用服务器特性比较

    特性
    JBoss 4.2
    Geronimo 2
    Tomcat 6
    Java EE 5一致性
    部分支持
    完全支持
    部分支持
    支持EJB 3.0
    支持
    支持
    原则上支持
    JSP2.1和Servlet2.5
    支持
    支持
    支持
    JSF1.2
    支持
    支持
    原则上支持
    客户化插件
    支持
    支持
    不支持
    业务规则引擎
    原则上支持
    原则上支持
    原则上支持
    Hibernate3.x
    支持
    原则上支持
    原则上支持
    集群
    支持
    支持
    部分支持
    Eclipse IDE
    支持
    支持
    支持
    当读者的应用需要比较特殊的扩展,或是想与Java EE 5最贴近时,那么,Geronimo 2是最佳的开源Java EE应用服务器选择。尽管JBoss 4.2与Sun的Java EE标准在实现上有一定的出入,但JBoss 4.2 team提供了许多与Java EE标准很符合的技术,同时也扩充了Java EE 5的标准范围。而Tomcat 6本身就是一种轻量级的解决方案,所以它不并包括Java EE 5的所有特性,或是在JBoss及Geronimo中所提供的特性,但正是由于它的轻量级,才使它对内存的占有量比较少,并且比其它两种服务器运行起来更快。

    1.Java EE 5一致性

    Sun公司的Java EE 5标准是一种行业标准,而作为这种标准的实现,开源的Java EE 5应用服务器应该与其尽量的保持一致,因此Java EE 5的一致性是一个很重要的指标。在这三种开源的实现中,Geronimo是实现得最好,与Java EE 5标准最贴近的应用服务器。JBoss 4.2支持绝大部分Java EE 5的特性,当然,不久即将发布的JBoss 5将完全支持Java EE 5的所有特性。而Tomcat一般看成是JSP/servlet的容器,仅仅支持Java应用服务器的基本特性。
    2.支持EJB3
    EJB(Enterprise JavaBeans)是指能在Java EE服务器部署的Java组件。它通常将一些业务功能打包成可重用的组件。新发布的EJB3提供了许多新功能,解决了旧版本中许多问题。JBoss 4.2及Geronimo 2均支持EJB3。Tomcat 6本身并不支持EJB3,但Apache OpenEJB项目可以使Tomcat支持EJB3,据称Tomcat可以运行一种嵌入式的JBoss EJB3容器。

    3.支持JSP 2.1/Servlet2.5
    对JSP/servlet的支持是绝大部分Java服务器应提供的最基本功能。JSP2.1和Servlet2.5是Java EE 5对JSP/servlet的升级功能。JBoss 4.2、Geronimo 2及Tomcat 6均支持JSP/servlet这一特性。

    4.支持JSF 1.2
    JSF(Java Server Faces)是一种在Java EE应用部署的组件式架构。提供基本的Web开发的用户界面。与请求驱动的MVC(Model-View-Controller)的架构不同的是,JSF采用了组件驱动的模式。就目前的JSF1.2而言,JBoss 4.2及Geronimo 2都有很好的支持,而运行在Tomcat 6时有不少的问题待解决。

    5.支持客户化插件
    客户化插件支持,意味着可以在原有应用服务器功能的基础上,开发新的功能,并能很好的协同使用。在JBoss中使用MBeans(managed beans)来处理插件开发。而Geronimo也采用类似的处理方式,只是名称不一样,叫GBeans。这些客户的Beans为开发及部署客户资源时,提供一系列统一的接口。

    6.支持业务规则引擎
    几乎所有的应用程序都是建立在一系列业务规则之上,或称之为业务逻辑。而业务规则引擎组件则能帮助管理与简化业务逻辑编程。一般的编程过程中,程序员最常见的逻辑有如if/then逻辑。而有了业务规则引擎,则可以实现许多更加智能的业务逻辑。Drools作为一种业内很流行、标准化的业务规则引擎,在JBoss 4.2、Geronimo 2及Tomcat 6中均可得到支持。Geronimo完全支持Drools,而JBoss支持Drools的历史最久,已达三年之久,并使JBoss/Drools成为了一种非常有市场竞争力的业务规则解决方案。

    7.支持Hibernate 3.x
    Hibernate为Java编程提供了强有力的关系/对象模型(ORM,Object-relational mapping)。Hibernate可以将面向对象的模型映射为关系型数据库,这对Java开发来说是最有吸引力的。Hibernate作为一种开源的软件,最早就是由于JBoss的一个团队所开发(Gavin King)。当然,JBoss 4.2、Geronimo 2及Tomcat 6均支持Hibernate 3。

    8.支持JBoss Seam
    JBoss Seam是一种著名的应用框架,集成了众多的Java及Web技术,例如Ajax、JSF、Java Portlets、BPM(Business-process management)等技术。Seam是JBoss的项目,理所当然,JBoss 4.2自然支持它,同样Geronimo 2也支持JBoss Seam。据JBoss Seam的开发团队称,Tomcat可以通过使用JBoss嵌入式EJB 3容器来支持JBoss Seam。

    9.支持集群
    集群通过并行在多台服务器运行同样的服务,从而大大的提高应用的吞吐量,达到所谓的高负荷的效果。由于采用了数台服务器同时运行,所以当其中的某台服务暂时或死机时,对客户不会造成服务停止,从而达到业务的可持续。集群极大的提高了企业级的Java应用的性能、吞吐量等能力。
    JBoss 4.2、Geronimo 2及Tomcat 6均以同样的方式来支持集群。JBoss在集群层使用及时复制的方式来达到集群的目的。而Geronimo所发布的集群,还处于测试阶段,需要时间的考验,如果有兴趣,可以与Apache基金组织联系。

    10.支持Eclipse IDE
    Eclipse是目前最流行的Java开发工具,自然,与Eclipse的集成是众多Java EE 5应用服务器应该提供的功能。JBoss、Geronimo及Tomcat均支持与Eclipse整合。特别地,JBoss还有自己的Eclipse版本,称为Red Hat Developer Studio,目前正处于测试的阶段。利用Geronimo提供的工具,可以省去手工配置XML文件的烦琐。同时,数据库连接池工具都可以自动的下载所需要的数据库连接驱动。

    三、 部署
    这三种应用服务器的安装均十分简单。在相关的网站上下载zip或tar包进行解压,唯一需要配置的是设置JAVA_HOME环境变量(不过一般均有配置)。注意,在Linux/Unix系统下,需要先发送chmod命令。

    1.Geronimo
    对Geronimo 2来说,进行配置及部署Java应用程序非常的简单,特别是通过它提供的Web控制台更加简单。Geronimo控制提供了许多简单的功能来帮助开发人员进行应用程序的配置。可以进行数据库的连接池测试及安全设置或配置等。

    图1.Geronimo控制台

    2.JBoss
    JBoss 4.2有非常漂亮的Web管理控制台,但它所提供的管理功能及特性与Geronimo不尽相同。首先看到的是JBoss的状态及其监测信息,但并没有提供部署功能。而部署Java应用时,只需要将它复制到default/deploy文件夹下面,JBoss会自动的检测到它并进行相关的快速部署。当然,也可以通过修改配置jboss-service.xml来进行客户应用程序所在目录的映射。

    图2.JBoss控制台

    3.Tomcat
    Tomcat 6不愧为一款快速的轻量级的应用服务器。它的控制台提供了基本的部署功能。可以通过Tomcat的控制台进行服务的启动/停止及WAR包的deploy/undeploy操作。当然也提供了Tomcat的运行状态及监测信息,同时有很好的用户授权系统。

    图3.Tomcat控制台

    四、 性能
    就可靠性而言,性能应该是所以的应用服务器所应该提供的最重要的特性。在本文中,笔者做了一个小实验,使用JSP页面及编译好的servlet来测试应用服务器所能处理的用户会话个数以及所能连接的用户数量。当然,实际的Java应用是更加复杂的,而本实验中的JSP页面及servlet是比较简单的,主要用于测试Web应用服务器的稳定性、可靠性及速度。
    使用的测试机器为:双核-64位 CPU,4G的内存,在实验中,让第一种应用服务器运行到1200000个会话。当然,这些会话不并是同时连接。

    图4.多Session测试JSP页面结果

    图5.多Session测试servlet结果
    测试所用的代码量只有区区的几百行,为了准确起见,笔者对三种服务器使用了相同之处的配置。当然,如果采用实际的Java应用程序来测试时,所得到的数据结果图会有一定的出入,但大概的趋势会一致。
    JBoss 4.2的表现不如Geronimo2,毕竟Geronimo 2所采用的实现技术及思想都是最新的。正如图所示,Tomcat 6的性能最好,因为Tomcat 6本身就是为JSP/servlet量身定做的Java EE 5应用服务器。相比起JBoos或Geronimo需要20秒进行启动的长时间,Tomcat仅仅需要3秒钟。

    五、 小结
    在本文中,笔者比较了主流的Java EE应用服务器的特性、部署及性能方面的内容,特性方面的比较应该有利于读者选择更加适合自己项目的Java EE应用服务器,做到有目的性的选择服务器,从而达到适合的效果。
    同时,笔者测试比较了商用或开源的Java应用服务器,发现商业的Java应用服务器不一定比开源的好,反而在商业的应用服务器(如Sun的Java应用服务器或BEA的WebLogic)中的Bug比开源的的应用服务器更多些。
    JBoss、Geronimo及Tomcat是快速可靠的可用于处理部署大规模的Java企业级应用的服务器。特别值得一提的是,很多的高性能Java服务器技术都是从这些开源的应用服务器中总结与借鉴过来,而不是从那些商业的应用服务器中发展而来。

    tomcat: Tomcat是一个开放源代码、运行servlet和JSP Web应用软件的基于Java的Web应用软件容器。Tomcat由Apache-Jakarta子项目支持并由来自开放性源代码Java社区的志愿者进行维护。Tomcat Server是根据servlet和JSP规范进行执行的,因此我们就可以说Tomcat Server也实行了Apache-Jakarta规范且比绝大多数商业应用软件服务器要好。做为web容器轻量小巧,如果你不是使用ejb开发,那就可以用它,快速方便。

    jboss:JBoss服务器是一种优秀的J2EE服务器,和BEA的Weblogic,IBM的Websphere属于同类产品, JBoss的优势在于具有良好的性价比,实现了所有j2ee的规范和api,支持的标准新,版本快,有开放源码的所有优点,支持热deploy,适合开发环境,尤其是大的团队开发,deploy会拖掉整个团队的效率。文档太少。启动快。
    JBoss为完全开放源码的免费软件,而且具有良好的运行效率和可靠性,因此已经得到越来越多的J2EE应用开发者的青睐。

    他其中的web容器就是用tomcat,不过支持了ejb,速度慢一些,不适合开发阶段,可以用于真实运行环境(免费)。

    weblogic: WebLogic 是一套基于JAVA功能强大的电子商务套件,提供了许多功能强大的中间件以方便编程人员编写的JSP、SERVLET 等电子商务应用,可以为企业提供一个完整的商务应用解决方案。不适合开发阶段,太慢了,适合于运行环境(收费)。

  • 相关阅读:
    技术期刊 · 五等分の花嫁 | Vue 3.2 正式发布!;大型项目管理策略;开源社区运营就像种菜;阮一峰的 fetch 教程;Webpack5 学习的平凡之路
    最近很火的低代码到底是什么?
    测试开发之前端篇-Web前端简介
    痞子衡嵌入式:简析i.MXRT1170 XECC功能特点及其保护串行NOR Flash和SDRAM之道
    痞子衡嵌入式:其实i.MXRT下改造FlexSPI driver同样支持AHB方式去写入NOR Flash
    《痞子衡嵌入式半月刊》 第 38 期
    [Vue深入组件]:native事件修饰符以及拓展之自定义组件的事件监听目标DOM元素自定义
    [Vue深入组件]:v-model语法糖与自定义v-model
    [Vue深入组件]:禁用 Attribute 继承
    @from [GITHUB] : Learn regex the easy way
  • 原文地址:https://www.cnblogs.com/linuxcx/p/11663777.html
Copyright © 2011-2022 走看看