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

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

简单接口测试

   @GetMapping("/test")
   publicStringtest() {
       returnUUID.randomUUID().toString();
  }服务器

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

Tomcat

Undertow

Jetty

结论

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

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

cpu:tomcat>jetty>undertow高并发

复杂接口测试

Tomcat

Undertow

Jetty

结论

在稍复杂的接口测试下,tomcatunderwow的差距并无很大,可是tomcat在吞吐量和cpu方面依然占据了稍小的优点,jetty与前二者存在差距。性能

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

cpu:tomcat>undertow>jettyspa

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

相关文章
相关标签/搜索