java服务器性能_Java服务器性能及稳定性对比

生存压力大,亚历山大,今年开始学习Java了。

java界听说tomcat挺厉害的,还有jetty,网友推荐了一个叫resin,听说也不错。

五一节前对他们性能及稳定性做了对比,结果如下,供大家参考:

测试项目:

Spring Boot  hello world war包

Jvm参数: -Xmx4096m -Xss1m -Xdebug -Xnoagent -Duser.timezone=GMT+8

Apache Utils

ab并发测试(单位:处理请求数/秒)

Resin4.0.53

Tomcat9.0.6

嵌入式tomcat

嵌入式jetty

20次热身

301.62

69.51

34.83

108.63

第一次2万

1879.81

2054.78

2321.64

1865.33

第二次2万

2787.43

3167.27

3285.55

2987.00

第三次2万

3157.62

3261.77

3481.85

3034.85

第四次2万

2958.72

3609.55

3404.02

2944.49

第一次20万

2873.62

3359.72

3381.35

3054.06

第二次20万

2832.29

3429.02

3435.94

3057.91

第三次20万

2832.49

3688.58

3437.44

2869.04

第四次20万

3044.37

3354.39

3452.87

3028.47

平均值

2518.66

2888.29

2915.05

2549.98

奔溃/重启

resin监控

Jconsole

eecbcdb196ed437599e42e71727c1bb5.png

jvisualvm

757e42a8a98ddc49f1f7faddd76d60a6.png

嵌入式tomcat

465ec5bef2137ac34c52cef60ac95277.png

02bda43d30ee280f45da664f8ed18adf.png

Tomcat:

e8cc4ab598a1b94892083e9924bf6830.png

62291a33eea15c049a509169bba56958.png

嵌入式jetty:

8c98a8791fd1d3c99d7243e6e3d593e3.png

39678959b4f3b6c629ab43f2c93c7144.png

测试结果

堆使用:嵌入式tomcat及嵌入式jetty开销比较小。其中嵌入式tomcat比嵌入式jetty开销更稳定,并发结束后堆使用即刻释放,趋于稳定,在100M左右,resin开销比较大,达到350-400M,并发结束后以后稳定。

线程使用:嵌入式tomcat

总体推荐使用 :嵌入式tomcat>嵌入式jetty>resin

容错处理

容器容错处理以及日志输出在业务场景中也会影响系统的稳定性以及处理能力。

Java中日志输出功能会消耗大量IO,在容器实际选择过程中也要考虑这方面的性能。

比如:tomcat日志大量输出错误日志,错误日志几百M甚至1G左右的时候,记录日志也会使一笔很大的IO开销。

Tomcat:

协议错误,路径出错控制台大量错误信息。

内存变化240-310M

26dd569eec94a7ab0f02f5bf8ecfb5c0.png

Jetty

容错处理好,内存变化比较小,239-380M,信息量比tomcat少,只显示关键性错误。

efa3713f02f31820698792b336d10e62.png

Resin

内存变化:88M-89M,基本无变化

Resin有一套优秀的日志处理模块:

按日志大小、周期(天、周、月)回滚可与apache日志模块媲美。

b1754379e93863f070f47b69ac278875.png

测试结果

本轮web容器稳定性没有出现问题,嵌入式jetty出错信息量与嵌入式tomcat相当,整体来说jetty处理错误信息相对友好化。Resin处理错误信息友好程度比嵌入式jetty和嵌入式tomcat好。出错信息量少。

推荐顺序:resin>嵌入式jetty>嵌入式tomcat

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值