我一直在阅读异步servlet,试图看看它是否适合我的用例。
服务器将接收长时间运行的请求,这些请求需要花时间从数据库中读取,并处理每条消息。
以下是基本流程:
所以有一个db等待,所有类似的请求将有,然后处理每个doc,这发生在同一个线程中。
在这种情况下切换到异步servlet与常规同步servlet有什么好处吗?
此外,如果我确实使用异步servlet,那么尝试并行处理带有线程池的文档会有什么好处吗?似乎我不会获得任何额外的好处,但也希望澄清这一点。
感谢您的帮助!
答案 0 :(得分:0)
在这种情况下切换到异步servlet与常规同步servlet有什么好处吗?
是。实际上,所有手册都告诉您"异步servlet对此有用的用例"
此外,如果我确实使用异步servlet,那么尝试并行处理带有线程池的文档会有什么好处吗?似乎我不会获得任何额外的好处,但也希望澄清这一点。
无关。异步servlet只是释放资源,因此即使许多servlet正在等待结果,你的服务器也会继续回答请求。它与回答异步请求的速度无关。
优化逻辑带来的好处对服务器和用户都有好处,但如果您使用的是异步servlet或同步servlet,那将会很好。