Spring-boot 2.0 最近 发布,每个人都对新功能和改进感到兴奋。Spring 5引入了WebFlux框架,它是一个完全异步且无阻塞的反应式Web堆栈,可以处理大量并发连接。这使我们能够垂直扩展服务以处理相同硬件上的更多负载。
本实验旨在通过捕获高负载下传统的servlet堆栈与反应式堆栈的性能来比较。
测试源码:[url]https://github.com/raj-saxena/spring-boot-1-vs-2-performance[/url]
1.同时测试2500个用户
负载的响应时间相似,但是响应式堆栈处理的请求数/秒数超过了servlet堆栈的1.5倍。
2.同时测试5000个用户
反应堆栈在响应时间和它可以处理的请求/秒数方面都具有更好的性能,提高2倍多。
3.同时测试10000个用户
Reactive反应堆栈是明显的赢家。提高5倍多。
我们可以清楚地看到,在不损失性能的情况下,Reactive反应堆栈可承受的负载是一项重大改进。它使我们能够更好地利用硬件专门用于执行大量I / O操作的服务,例如对其他服务进行网络调用或与数据库交互。它在低负载下具有类似的吞吐量,并迅速处理高负载。这是一场大胜利!