既然异步的目的是提升吞吐,假设一台机器的线程数最多1000个,那么异步模式(DefferedResult)你500个(tomcat线程)用来处理请求,500个(spring中taskexecutor)用来处理回调,与同步模式1000个都用来处理请求有啥区别?
1 回答
至尊宝的传说
TA贡献1789条经验 获得超10个赞
我理解 springmvc (异步servlet) 解决的 问题是 大量耗时操作占满线程资源导致服务器拒绝连接 ,他并不是更高效,因为你该处理的操作还是要处理 ,且他的IO还是同步的,并不能像 reactor+IO多路复用 那样 节约用于IO的线程资源耗费 ,
所以他能做到的就是 在处理长时间的操作的时候,不会因为占满线程而拒绝服务,因为 总有500个线程来接受请求
- 1 回答
- 0 关注
- 1033 浏览
添加回答
举报
0/150
提交
取消