本港台开奖现场直播 j2开奖直播报码现场
当前位置: 新闻频道 > IT新闻 >

【j2开奖】TomcatJboss/wildfly性能比对之测试篇

时间:2017-02-21 23:58来源:天下彩论坛 作者:j2开奖直播 点击:
Jboss(准确地讲应该是Jboss AS)是一款基于 J2ee 的免费开放源码应用服务器,由 Jboss 社区维护(注意区别于 Jboss 的另一款商用应用服务 JBoss EAP,由 Radhat 提供商业支持)。 它是一个管理

【j2开奖】TomcatJboss/wildfly性能比对之测试篇

  Jboss(准确地讲应该是Jboss AS)是一款基于 J2ee 的免费开放源应用服务器,由 Jboss 社区维护(注意区别于 Jboss 的另一款商用应用服务 JBoss EAP,由 Radhat 提供商业支持)。

【j2开奖】TomcatJboss/wildfly性能比对之测试篇

  它是一个管理 EJB 的容器,严格讲 Jboss 核心服务仅支持 EJB 服务器,是不包括 JSP 和 Servelt 的 web 容器,所以 Jboss 之前一直绑定 Tomcat 作为 Web 容器,但 Web 容器毕竟是应用服务器中最重要的模块之一,更为了满足 Jboss应用服务的集成需要,所以到 Jboss 8.0(改名叫 wildfly)的版本后,开奖,Jboss 终于有了属于其开源组织旗下的一款自己的 Web 容器“Undertow”。

  现在问题来了:同样是免费开源,做为深受广大人民群众喜爱的 Web 应用服务龙头“Tomcat”,和基于 Undertow 的 Jboss/wildfly,在做为 Servelt 容器应用方面孰优孰劣?

【j2开奖】TomcatJboss/wildfly性能比对之测试篇

  秉着不做吃瓜群众,绝知此事要躬行的原则,作者以 tomcat v8.0.26和 Jboss v9.0.0(wildfly v9.0.0)为例,亲了一把。

  1、 试方法简述1)系统分析及需求收集

  现今大多数互联网应用系统的数据流转为:

  首先各种终端(PC/手机/Pad)发起请求(http 或者 scoket 协议);

  其次经过各种“软硬件大拿”们的路由调度优化,到达系统定义的接入层应用系统服务器(Tomcat/Jboss 应用处);

  最后到后台的核心业务应用服务器(Tomcat/Jboss 应用处)。

  应用系统之间的消息流转用的一般是基于一些开源 RPC 框架(Dubbo,Protobuf)的远程调用。

  因此有以下两个特点:

  Tomcat/Jboss 不作用静态页面(.htm,.jsp)的服务器,该功能由 nginx 承担

  Tomcat/Jboss 独立部署,不进行 tomcat/jboss 服务器间的(支持实时服务器间 session,context 复制)集群

  综上Tomcat/Jboss 的性能优化比对测试,仅验证其作为 Servelt 容器的能力即可。

  2)测试软硬件环境

  物理环境

  使的4*cpu+16G内存的虚拟机

  软件环境

  操作系统:linux(Oracle Linux Server release 6.5)

  软件版本:tomcat8.0.26,Jboss9.0.0

  3)性能参数

  JVM内存:8G(-Xms512m –Xmx8192m)

  maxThreads:测试512/1024/2048三档

  enableLookups:固定为false

  acceptCount:固定为512/1024

  connectionTimeout:固定为30000

  工作模式:NIO/APR

  ax_tw_buckets = 60000

  4)Servelt测试桩及部署

  测试桩不进行复杂的业务处理,仅进行简单的参数解析及回显:

【j2开奖】TomcatJboss/wildfly性能比对之测试篇

  性能测试工具的调用方调度式:

  :3030 /loginServelt?username=1&password=1

  2、 测试内容

  相同压力下,Tomcat/Jboss 的处理效率(TPS,响应时间)。

  以100/200/300/500/1000/2000用户分档进行并发压测,观察 tomca t和 Jboss 在各档配置时的处理效率,记录 TPS、响应时间、内存占用、CPU。

  3、 测试数据及分析1)测试数据

【j2开奖】TomcatJboss/wildfly性能比对之测试篇

  说明:

  tomcat 采用的是最优的 apr 模式,Jboss 9.0.0内置的是 undertow,只有 NIO 模式一种;

  失败的原因,从错误信息看,atv,全部是连接服务器失败,说明在高负荷情况下,服务器来不及接收新的连接请求造成的;

  上述测试采用的是用测试工具进行的压测,同时采用 AB 工具进行过测试(测试结果和上述工具的测试结果一样),具体数据参见附录1:AB测试记录;

  本部分比对测试过程中,网络出现较明显延时开销,致总体 TPS 不高,但这也会比较符合实际生产的环境。

  2)比对结论

  相同配置及被测业务模式下,Jboss 处理效率低于 tomcat 约30%左右;

  (注意:实际是 Jboss 约比 Tomcat 多花了10ms 左右,案例中在测试业务耗时很短的情况下看起来差异很大,而实际业务耗时比较大的情况下,比如业务需要1s,那么 Jboss 只低约10ms/1000ms=1%左右)

  相同的业务处理压下(TPS)下,tomcat 占用的CPU略低于 Jboss;

  Tomcat 上用的内存小于 Jboss(这点可忽略不计,两者都占用不大,内存又便宜);

  在高并发下,Jboss 有更高的失败率。

  结论:Tomcat 在处理效率、CPU 占用、内存占用上、业务成功率均优于 Jboss。

  结束语

(责任编辑:本港台直播)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
推荐内容