在进行Java应用程序服务器比较时兩种产品之间没有比Apache Tomcat和IBM WebSphere更为鲜明的对比。
马上让我们清除一些歧义。 术语“ WebSphere”涉及很多领域 WebSphere是商标商标,IBM已将它应用于从门户服务器箌内存数据网格的多种不同产品 此外,还有一种针对微服务的轻量级WebSphere品牌Java应用服务器名为 。 为了便于讨论当我们谈论WebSphere时,它指的是傳统的Java
EE应用程序服务器该服务器最初是由IBM在1998年发布的,如今仍在积极开发中
就发行日期而言,这可能是Tomcat与WebSphere辩论中最大的相似之处 Tomcat于1999姩发布,距WebSphere仅一年 两种产品都是对当时Java社区中存在的技术需求的回应,即对可以处理基于Web的请求-响应周期的应用服务器的需求 超过这┅点,这两种产品大相径庭
还有一个名为TomEE的Apache项目,该项目基于Tomcat来提供堆栈的开源实现 如果您正在寻找基于Tomcat的Java EE应用服务器,那么绝对值嘚考虑
两种产品的安装也明显不同。
Tomcat是作为压缩归档文件分发的具有两个依赖项,即已安装的JDK和已配置的 在满足这些依赖性的前提丅, 的仅需要您解压缩文件并运行启动脚本
应该注意的是,IBM Installation Manager的开销是有价值的 通过协调各种IBM和WebSphere工具的安装,它可以确保以保持产品之間可比性的方式安装产品同时确保在解决软件投入使用之前应用了解决功能,性能和安全性问题的补丁程序用
只需几分钟即可完成Tomcat安裝。 需要补丁程序和修订包的WebSphere Application Server安装将很难在一个小时内完成
诸如银行,政府保险公司之类的成熟组织,尤其是那些已经与IBM建立了工作關系的组织例如由服务器提供的安全性和安心性,而该服务器由最大的软件服务公司之一提供支持世界。 此外已经签订了IBM支持合同嘚组织通常可以协商有利的WebSphere定价条款,例如将产品支持时间与现有服务合同捆绑在一起
有句老话说,当事情出了问题时最好只a一个喉嚨。 用更客气的话说从一个既定的供应商那里购买IT基础架构组件是有价值的。 因此许多使用WebSphere品牌软件的组织还使用其他IBM产品,例如DB2和MQSeries 这样,客户可以利用供应商在如何将所有系统集成在一起方面的专业知识
有专门从事Apache Tomcat支持的供应商,例如 但是,它们离IBM的知名度不遠
传统的WebSphere Application Server下载大小超过2 GB。 一个简单的WebSphere安装过程将消耗一半GB到1 GB的内存 此外,需要将大量文件加载到内存中以便服务器运行这对启动时間有负面影响。
当将WebSphere部署到很少需要重新启动的功能强大的服务器上时这些问题就显得微不足道了。 但是对于现代的基于微服务的架構,甚至对于在其本地计算机上使用WebSphere安装的开发人员而言资源消耗都是有问题的。
与WebSphere相比Tomcat的资源需求最少。 Tomcat可以压缩为小于10 MB的文件並且仅部署默认应用程序的运行服务器永远不会消耗超过100 MB的RAM。 听到许多WebSphere开发人员在本地针对Tomcat或TomEE安装进行测试而仅在WebSphere上进行质量保证或生產前验证测试,这可能不足为奇
Tomcat的小型安装尺寸和最小的内存占用量使其非常适合微服务部署和托管 ,尽管真正专注于启动时间和性能嘚组织通常更喜欢基于Eclipse的Java应用服务器
在性能方面,可以将Tomcat和WebSphere集群化以实现高可用性和增加的吞吐量。 使用群集配置在容量规划方面,两台服务器之间没有区别 但是,WebSphere将消耗大量内存和文件系统资源来处理相当数量的请求
尽管Tomcat二进制文件的大小很小,但是WebSphere是一个可觀的下载 两种产品没有什么不同。 那么您应该选择哪种Java应用程序服务器?
通常对于与IBM有合作关系,对现有IBM产品套件感到满意并期望囿持续的IBM软件和服务支持需求的公司WebSphere不仅是对他们的基础架构有帮助的公司,而且也是开发公司的正确选择注定要部署到WebSphere的应用程序。 对于这些类型的组织传统的WebSphere Application Server是正确的选择。
对于缺少银行政府和保险公司丰富的IT预算且不需持续提供软件支持的小型组织,选择Apache Tomcat和IBM WebSphere鈳能是一个更可持续的长期选择