产品战略专家梁宁确认出席AICon北京站,分享AI时代下的商业逻辑与产品需求 了解详情
写点什么

JEE 服务器大比拼

  • 2008-04-14
  • 本文字数:1081 字

    阅读完需:约 4 分钟

当你为自己的应用选择 JEE 服务器时,会发现信手拈来就有很多选择。选择服务器的关键是要知道哪个应用服务器才是最好的。最近,Jonathan Campbell 比较了一些常用 JEE 应用服务器,给出了令人惊讶的结果并发表了一些评论。

不久前,Jonathan 刚为 Javaworld 对大量的 JEE 服务器进行了比较,当时比较的 J2EE 服务器有 JBoss 4.2,Geronimo 及 Tomcat 6,主要比较的方面有特性、部署及性能。

  • Java EE 5 兼容性
  • EJB 3.0 能力
  • JSP 2.1 与 Servlet 2.5 能力
  • Hibernate 3.x 的支持
  • 集群支持

在比较特性的同时,Jonathon 还对它们的性能作了比较。比较测试中,他使用了简单的 JSP 与 servlet,将同样的测试运行于不同的应用服务器之上,以查看各种应用服务器是如何创建 session 的,并在保持并发 sessions 的同时测试用户连接的速度。Geronimo 借助其在特性数量方面的优势而最后胜出。总之,Jonathan 总结说:每一种服务器都可以完成应用所需的任务。我们可以在这里查看到所比较的特性项以及各服务器间相比较的细节。

这一次的比较,Jonathon 选取的JEE 应用服务器与上次不尽相同,这次涉及到的有Glassfish 2.0、JBoss 4.2、WebSphere 2.0 社区版(Geronimo) 及Weblogic 10。但这次,他仍然比较了上次所比较的特性项。

如果纯粹从特性的角度来看,Geronimo 在比较中胜出,而Glassfish 2.1 仅落后一步之遥。另外,Jonathon 也比较了这些服务器的性能,并在比较性能的时候,用到了一个叫做jRealBench 的应用。JRealBench 的设计目的在于显示确实的性能比较,它主要用于测试session 的创建/ 访问及再次访问。在性能比较中,Geronimo 又一次胜出,紧随其后的是JBoss。

Jonathon 因此再次得出如下结论:Geronimo 是此次比较的赢家,它也是最物有所值的应用服务器。这个结论激起了很多评论,很多人质疑其比较结果的可信度。其中一些争论基于如下观点:每种 JEE 应用服务器都有其自身定制的安装/JVM,如 Weblogic 的 JRockit,而这些定制提供的额外性能在这次比较中却丝毫没有提到。还有一些人提到了 SPEC 这是一个非盈利的公司,该公司通过他们自己的测试方式比较各种 JEE 应用服务器的性能已经有一段时间了。

最后,Jonathan 直接比较了一些主流 JEE 应用服务器的性能。可以在这里查看所比较的特性项和比较结果的完全列表。

查看英文原文: Comparing JEE Servers


译者简介:张龙,同济大学软件工程硕士,现就职于理光软件研究所。主要从事文档工作流和办公自动化解决方案的研发工作。热衷于 Java 轻量级框架的研究,对敏捷方法很感兴趣。曾有若干年的 J2EE 培训讲师经历。参与 InfoQ 中文站内容建设,请邮件至 china-editorial[at]infoq.com

2008-04-14 16:19833
用户头像

发布了 88 篇内容, 共 262.4 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

【Spring专场】「IOC容器」不看源码就带你认识核心流程以及运作原理

洛神灬殇

Spring Framework spring ioc 1月月更 框架原理

Rust 元宇宙 18 —— 多场所共存的世界

Miracle

rust 元宇宙

ReactNative进阶(八):connect

No Silver Bullet

React Native Redux 1月月更 connect

某反序列化漏洞分析与复现工作

网络安全学海

黑客 网络安全 信息安全 渗透测试 安全漏洞

跟着动画学习GO数据结构之Go链表

宇宙之一粟

数据结构 链表 Go 语言 1月月更

试论架构师必备的基础能力

陈俊

架构 技术认知

Go编译原理系列4(语法分析)

书旅

Go 编译 计算机基础 编译原理

模块四作业

Geek_59dec2

全链路压测系列(四):全链路压测的价值是什么?

老张

性能测试 生产环境全链路压测

我最终选择VS Code

Jackpop

Failed to load module "canberra-gtk-module"

Ayosh

【网络安全】浅析跨域原理及如何实现跨域

H

网络安全 网络安全信息安全、

Uber系统架构设计

俞凡

架构 大厂实践 uber

Postman如何做接口测试1:如何导入 swagger 接口文档

和牛

测试

模块五作业

Geek_e6f7f6

架构训练营

个人成长中,关于规划设计的思考

程序人生

数据库设计三范式

Ayue、

MySQL 1月月更

跟一段工作说告别了

wood

300天创作

在 Flutter 中发出 HTTP 请求的最佳库(2022 年)

坚果

flutter 1月月更

工作方式发生了动荡?

Jackpop

办公专用!又一款开源免费”摸鱼“神器....

Jackpop

Python

18款口碑爆棚手机浏览器,被一网打尽了

Jackpop

拆分电商系统为微服务

ren

一个cpp协程库的前世今生(十三)互斥量

SkyFire

c++ cocpp

【日拱一卒进击大厂系列】为什么单线程的Redis可以实现高并发访问

慕枫技术笔记

后端 1月月更

被忽视的问题:测试环境稳定性治理

老张

测试环境 稳定性治理

C#使用原生方法将文字朗读出来

喵叔

1月月更

log4j bug

你?

架构实战营 4 期第四模块作业

jialuooooo

架构实战营

LabVIEW色彩匹配实现颜色识别、颜色检验(基础篇—13)

不脱发的程序猿

机器视觉 LabVIEW 颜色识别 颜色检验 色彩匹配

LabVIEW彩色图像分割(基础篇—14)

不脱发的程序猿

机器视觉 图像处理 LabVIEW 图像分割 阈值处理

JEE服务器大比拼_Java_Bryan Clauser_InfoQ精选文章