龙空技术网

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

IT小熊实验室丶 585

前言:

现在姐妹们对“netty jetty 区别”大致比较注意,看官们都需要了解一些“netty jetty 区别”的相关文章。那么小编在网摘上收集了一些关于“netty jetty 区别””的相关文章,希望看官们能喜欢,我们快快来学习一下吧!

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

简单接口测试

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

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

Tomcat

tomcat简单接口

Undertow

undertow简单接口

Jetty

jetty简单接口

结论

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

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

cpu:tomcat>jetty>undertow。

复杂接口测试

复杂接口

Tomcat

tomcat复杂接口

Undertow

undertow复杂接口

Jetty

jetty复杂接口

结论

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

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

cpu:tomcat>undertow>jetty。

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

标签: #netty jetty 区别