Undertow同Tomcat是一个概念,具体就不说了,很多人应该都知道他,各类文章中都在说他性能高,推荐把Tomcat还为Undertow,但我是这几天才换的,事实也确实如此,性能要比Tomcat高,拖到这么久才换是我觉得我能把握住Tomcat,但是后来怎么搞都提升不了性能。
起因是朋友找我做一个小程序项目,项目需要文件上传,短时间内可能有接近百人上传,但我的服务器只有5M,肯定不够,大家都知道服务器带宽贵的要死,只能让用户该等还的等了,但是好在这个项目只有某一天上传的量比较多,可以在这一天升级带宽,也不贵。
但是还是想在代码层上提升一下,但是怎么搞,都发现提升不了多少,正在埋头苦思的时候,想到替换Tomcat试试,果然,效果出乎意料。
直接上两个图。
下面这个是对Tomcat的测试,用jmeter启动10个线程循环10次,也就是发出100个Http请求,附带605KB的图片的压测结果。
下面这个是Undertow的结果。
从中可以看到Undertow的throughput(吞吐量)值要远高于Tomcat。
但是Undertow源码也不熟,没啥好说的,等之后研究后在做文章。