提问人:Junaid 提问时间:8/31/2015 更新时间:8/31/2015 访问量:268
如何在 Apache Tomcat 6 服务器中修复 java spring mvc Web 应用程序运行时?
How to fix java spring mvc web application run time in Apache Tomcat 6 server?
问:
我使用 java spring mvc 开发了一个 Web 应用程序。现在我想在 tomcat 服务器上部署应用程序,并希望应用程序在一天中的某个时间段内运行。例如,该应用程序将在每天上午 10:00 至下午 6:00 以及一天中无法使用该应用程序的其他时间运行。我已经搜索了是否可以使用 tomcat 服务器 6 做任何事情,我想部署我的应用程序,但无法获得任何解决方案或线索如何实现目的。所以,我的问题是我怎样才能实现我想做的事情?任何解决方案、样本或想法都对完成任务有很大帮助。
答:
我认为您正在尝试使用您的基础架构来解决您的问题,而不是在应该解决的地方使用您的应用程序。如果要求在特定时间段内应用程序不可用(这是一项业务要求),请为其编写解决方案。例如,如果登录名超出指定时间段,则可以不允许登录,然后向用户显示消息。可以使用处理程序拦截现有会话,然后使会话无效,强制重新登录。
另一种解决方案是在服务器上运行 cron 作业,该作业会在指定时间停止 Tomcat 并再次启动它。这是不可取的,因为您的用户不会知道操作时间,并且很可能会认为出了问题。
评论
最后,我实现了在一天内在 tomcat 服务器上运行一定时间的 Web 应用程序的机制。我通过扩展spring框架的HandlerInterceptorAdapter来使用自定义拦截器来拦截所有servlet请求。然后,在 preHandle 函数中,所有 servlet 请求都已传输完毕,然后检查当前时间是否在应用程序将运行的时间段内。如果在时间段内,则允许请求继续,否则重定向到特定页面,提示用户当前无法访问应用程序。
评论