该应用程序的体系结构:请求处理[复制](Architecture of the applicatio

2019-07-29 11:38发布

这个问题已经在这里有一个答案:

  • 在JSP / Servlet的Web应用程序[复制]后台定时任务 1回答

我有以下问题:

我写使用servlet和JSP的Web应用程序,应查询单独的服务。 但查询需要大量的时间 - 大约30秒。

我的应用程序的结构很简单 - 过滤器 - >控制器 - > JSP。 我在想什么,而控制器继续执行其工作,如果在过滤器中我将请求发送到一个单独的线程来处理。 我拿什么为了使查询过程和控制处理同时做? +我需要查询每5分钟进行更新(使用户确实有相关信息)。 什么是做到这一点的最佳方式是什么?

Answer 1:

使用的ServletContextListener的Web应用程序启动时启动一个线程。

线程应该将数据写入ServletContext中(例如,经由的setAttribute())。

当应用程序停止了ServletContextListener应终止线程。

该servlet应该从ServletContext中读取数据,因为它需要它。



文章来源: Architecture of the application: request processing [duplicate]