Tomcat关闭需要多长时间?

Stu*_*son 1 java tomcat

我的webapp运行在各种平台和硬件上的专用Tomcat实例上 - 主要是x86 Linux和Windows,还有Solaris和我在OS X上开发.我一直对操作系统之间关闭时间的差异感到惊讶.并且tomcat一般看起来比其他非平凡的服务(httpd,mysql,squid)慢.所以,一系列问题:

  • tomcat需要多长时间才能关闭?
  • 是什么原因导致tomcat比简单的"Hello World"servlet需要更长时间才能关闭?什么是重大影响,有什么影响?
  • 为什么我在平台之间看到如此大的差异?

我真的很喜欢细节.我半信服我可以用代码中的东西来改善关机时间.

在某些情况下(高容量,RHEL4),时间通常不超过10-20秒,但这对我来说似乎过长.

Nei*_*fey 5

您是显式启动线程(还是使用执行程序?).如果显式启动线程但未将它们设置为守护程序线程,则通常会延迟Tomcat关闭.如果使用执行程序,请提供自己创建守护程序线程的ThreadFactory.