别再误人子弟了-tomcatundertowjetty性能对比

Posted 我的小熊不见了

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了别再误人子弟了-tomcatundertowjetty性能对比相关的知识,希望对你有一定的参考价值。

在网上搜索查询发现清一色的都是说undertow高并发性能优于tomcat,并且还提供了各种实验依据以作证明,但是我私下测试发现情况和网上大部分结果并不一致。

简单接口测试

    @GetMapping("/test")
   public String test() {
       return UUID.randomUUID().toString();
  }

这是第一次测试的接口,使用jemter每秒600个线程调用这个接口。

Tomcat

Undertow

别再误人子弟了-tomcat、undertow、jetty性能对比

Jetty

别再误人子弟了-tomcat、undertow、jetty性能对比

结论

在简单接口中,发现tomcat对于cpu的占用是最低的,而且吞吐量最高。另外jetty停止测试花费了最长的时间导致吞吐量变低。

简单接口下吞吐量:tomcat>jetty>undertow

cpu:tomcat>jetty>undertow

复杂接口测试

别再误人子弟了-tomcat、undertow、jetty性能对比

Tomcat

别再误人子弟了-tomcat、undertow、jetty性能对比

Undertow

Jetty

结论

在稍复杂的接口测试下,tomcatunderwow的差距并没有很大,但是tomcat在吞吐量和cpu方面依然占据了稍小的优势,jetty与前两者存在差距。

复杂接口下吞吐量:tomcat>undertow>jetty

cpu:tomcat>undertow>jetty

从结果来看,tomcat依然是最稳定的服务器,而不是网上各种博主说的undertow更优。而jetty更适合长连接的服务,但是长连接我更倾向于选择nettyundertow更适合用于IO密集型服务器,或者文件服务器使用undertow会是一个不错的选择,但是在一般情况下还是老老实实的使用Springboot默认的tomcat吧。


以上是关于别再误人子弟了-tomcatundertowjetty性能对比的主要内容,如果未能解决你的问题,请参考以下文章

别再误解MySQL和「幻读」了

[转帖]别再问“分库分表”了,再问就崩溃了!

拜托,别再问我桶排序了!!!

拜托,别再问我基数排序了!!!

别再用MongoDB了!

别再写 shǐ 山代码了。。。