天天看点

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启动时候使用的线程池数量。不过毕竟是临时解决方案,不知道这个线程池加大会不会在程序跑起来后带来负面效应。