2012-04-05 24 views
0

Tomcat(作爲servlet容器)能夠管理會話。會話過期時,tomcat必須使其無效。據我所知,tomcat有一個調度程序,它檢查會話過期(我是否正確?我試着編寫一個實現了HttpSessionListener的監聽器(過期時間== 1分鐘),它的sessionDestroyed方法在分鐘,但我不確定會話失效)。Tomcat Sesison調度程序存在

問題是,調度程序的檢查週期是什麼?

回答

2

簡短的回答:默認情況下將進行檢查,每隔60秒

長的回答是:檢查是由後臺處理的線。每個容器(引擎,主機或上下文)都可以有自己的後臺處理線程。如果容器沒有後臺處理線程,它將使用來自其父項的後臺處理線程。引擎默認有一個後臺處理線程,每10秒檢查一次。主機和上下文缺省沒有後臺處理線程。此外,會話管理器僅在後臺處理線程的每個processExpiresFrequency執行中運行會話過期代碼。默認值爲6,因此會話過期每6 * 10s = 60s默認執行一次。

+0

非常感謝! – Dmitry 2012-04-06 06:44:40