Java Servlet 启动和监控轮询过程



我有一个Web应用程序,它包含一个轮询进程(无限while循环),该进程由Servlet在Tomcat服务启动时启动。

<load-on-startup>0</load-on-startup>

这很好用。

如果这是一个Unix进程,那么我可以在命令行上使用进行检查

ps -ef | grep <myProcess>

Servlet中有什么(简单的)东西可以用来监视我的轮询进程的状态吗?

编辑

澄清一下,我真正想看到的是,这个过程仍然在运行,没有停止。

IMHO,您不应该为该用例使用Servlet,而应该使用Servlet上下文侦听器。在其contextInitialized(ServletContextEvent sce)中,侦听器应该:

  • 启动轮询服务线程
  • 在ServletContext属性中放入一个对象,该对象包含来自轮询线程的状态(上次操作日期、每次操作的次数…)(并具有同步机制)

然后,侦听器可以在其contextDestroyed(ServletContextEvent sce)中停止轮询线程,并且任何servlet(包括JSP)都可以从servlet上下文中获取轮询线程的状态。

相关内容

  • 没有找到相关文章

最新更新