【发布时间】:2013-01-28 09:00:51
【问题描述】:
我正在使用 Spring 和 Tomcat 6 开发 Web 应用程序。有时,由于某种原因,请求需要很长时间才能完成,并且会降低服务器的性能。是否可以限制 Tomcat 6 或 Spring 中的请求执行时间?欢迎使用其他有关此问题的方法。谢谢。
【问题讨论】:
-
请求是否需要很长时间来处理数据或从数据库中获取数据?在此基础上,我可以提出解决方案。
-
@Vivek:长请求主要是处理数据。我们可以将它们放入队列并按顺序处理,但很难确定哪些请求符合条件。
-
为什么长请求会“降低服务器的性能”。即使您使用下面 TechExchange 的答案,如果是队列中的作业使您的服务器变慢,并且一个长时间运行的请求进入并被添加到队列中,那么仅仅超时连接不会修复您的性能问题;该作业仍将在队列中,并且可能会被处理。
-
@Disco3 有了队列,我们可以立即响应并稍后处理作业,并且可以安排它们以便不会同时处理长作业。