spring boot下Servlet容器Tomcat和Undertow性能对比

测试目的:

Tomcat和Undertow的性能做对比,确定生产环境调优参数

测试工具

压测工具:jmeter
jvm监控工具:visualvm

测试过程:

  1. 设置jmeter的线程组参数,设置如下:100个线程,每个线程发起100个请求,线程启动间隔是1秒
    《spring boot下Servlet容器Tomcat和Undertow性能对比》
  2. 设置请求参数,这里设置的是http,post请求。
    《spring boot下Servlet容器Tomcat和Undertow性能对比》
  3. 测试tomcat下的性能表现
    viusalVm监控结果:
    《spring boot下Servlet容器Tomcat和Undertow性能对比》
    jmeter聚合报告:
    《spring boot下Servlet容器Tomcat和Undertow性能对比》
  4. 测试Undertow下的性能表现
    《spring boot下Servlet容器Tomcat和Undertow性能对比》
    jmeter聚合报告:
    《spring boot下Servlet容器Tomcat和Undertow性能对比》

测试结果

当服务启动后有监控图对比

servlet容器使用内存(最大)线程数
tomcat65M122
undertow47M15

jmeter压测过程中监控结果对比

servlet容器使用内存(最大)线程数
tomcat148M19
undertow127M47

jmeter报告的对比

使用servlet容器samplesAverageMedia90%Line95%Line99%LineMinMaxError%ThroughputKB/Sec
tomcat100001661222473591390239820.00%467.3/sec115.1
undertow10000151113270375788323240.00%545.4/sec132.6

结论
在相同资源使用量的情况下undertow有较好的吞吐量和较低的访问时延,所以生产环境
以上只是粗略的测试,也不够专业,敬请谅解,但大致能对比出结果。如果大家有更好的测试方法,欢迎交流,可邮件联系。

原文地址

    原文作者:Spring Boot
    原文地址: https://blog.csdn.net/shog808/article/details/79162871
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞