天天看點

WildFly(JBoss8) 啟動時卡死問題解決

一個多月沒更。 略顯,最近也不知道在忙啥。

記錄個問題解決。

現象:在windows server 2012/ Linux(RedHat)/部分win7,在部署hibernate應用後,無法啟動,日志最後一行輸出

2014-12-31 17:33:51,961 INFO  [org.hibernate.util.NamingHelper] (MSC service thread 1-2) JNDI InitialContext properties:{}
           

然後卡死。

環境:64位win server2012+32位jdk7u45,WildFy8.2

使用visualvm檢查線程dump并沒有發現死鎖,但是發現wildfly和應用相關的MSC Service Thread卡住了,氣氛上應該是JBoss的問題,于是google之,竟然發現幾天前有人提出問題并解決了,連結見:

https://developer.jboss.org/thread/251092

解決:Wildfly github2015.1.2送出的代碼解決了這個問題,但是現有的build并沒有打這個patch,是以要麼從上面拉最新的代碼出來編譯,要麼用問題貼的臨時解決方案:

在WildFly的啟動參數中加入

-Dorg.jboss.server.bootstrap.maxThreads=32
           

從名字上來看是增加了JBoss啟動時候使用的線程池數量。不過畢竟是臨時解決方案,不知道這個線程池加大會不會在程式跑起來後帶來負面效應。