2013-05-28 17 views
0

使用在Windows 2008 R2上運行的tomcat 7.0.34運行我們的應用程序。 我們使用nio作爲http connetor(org.apache.coyote.http11.Http11NioProtocolconnector) 經過幾個小時的負載測試(其餘請求),connectionCount屬性被佔用到它的最大限制(默認10000)。在運行期間,連接在5000上保持穩定。10000的跳躍達到峯值。 雖然我停止加載這些連接仍顯示10000,我無法訪問使用http的服務器。 Tomcat看起來像凍結了)。 Busythreads和currentThread計數顯示爲37. 使用netstat不會顯示這些連接。所有其他服務器資源都可以(CPU,內存...)。 我生成的線程轉儲,但它不表示問題。tomcat凍結nio connectionCount在幾個小時的負載測試後達到極限

任何想法這個服務器狀態應該是什麼問題?

回答

0

請注意,使用NIO當前連接並不一定意味着線程被分配來處理該請求。它可能會保持活力。

這就是說,它看起來像連接計數跟蹤中的一個錯誤。我不記得在該領域最近的修復,但請重新測試7.0.40。也請使用netstat或類似的來確認沒有10,000個打開的連接。如果您仍然看到該問題,請在https://issues.apache.org/bugzilla處打開一個錯誤報告。

如果錯誤報告包含在部族安裝中重現此問題的步驟,這將非常有幫助。一旦所有請求完成處理,導致連接計數爲非零的任何事情就足夠了。