SpringMVC异步化请求初探(续-压测效果对比)

本文探讨了SpringMVC中异步请求的实现,包括Servlet3.0的异步请求、SpringMVC的deferredResult以及RxJava2的使用。作者通过压测对比了同步与异步请求在不同业务逻辑处理时长下的性能表现,结果显示当业务处理时间增加时,异步请求的并发量显著优于同步请求,展示了异步处理的优势。
摘要由CSDN通过智能技术生成

SpringMVC异步化请求初探(续-压测效果对比)

上篇总结

上次主要介绍的Servlet3.0异步请求,SpringMVC的deferredResult对异步的封装使用,以及使用高大上的RxJava2配合SpringMVC写出优雅的代码…但是上一次压测的结果并不太好,所以我要再开一片文章,争取测出好结果。

基准数据

上次压测的数据有点问题,需要修改下系统配置然后重新测试,原因如下:

macOS has only 16K ports available that won’t be released until socket
TIME_WAIT is passed. The default timeout for TIME_WAIT is 15 seconds.
Consider reducing in case of available port bottleneck.

修改方法:

sudo sysctl -w net.inet.tcp.msl=200

同步请求代码:

    Controller:

    @GetMapping("/sayHello")
    String say() {
        return observerService.helloWorld();
    }

    Service:
        String helloWorld() {
        //throw new IllegalArgumentException();
        return "hello world";
    }

压测结果:

# tomcat 200线程
# 60秒 400并发
siege -c400 -t60s http://localhost:8080/update/sayHello

Lifting the server siege...
Transactions:              91793 hits
Availability:             100.00 %
Elapsed time
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值