Lio*_*orH 20 java jboss jboss5.x
我们从JBoss 4(和JDK 5)升级到JBoss 5(和JDK 6).问题是开始时间从1.5分钟(在JBoss 4上)变为超过4分钟.
18:53:35,444 INFO [ServerImpl] JBoss (Microcontainer) [5.1.0.GA (build: SVNTag=JBoss_5_1_0_GA date=200905221053)] Started in 3m:9s:262ms
Run Code Online (Sandbox Code Playgroud)
似乎JBoss最长时间初始化的组件是JMX
18:50:41,926 INFO [LogNotificationListener] Adding notification listener for logging mbean "jboss.system:service=Logging,type=Log4jService" to server org.jboss.mx.server.MBeanServerImpl@1adc122[ defaultDomain='jboss' ]
18:52:38,797 INFO [JMXConnectorServerService] JMX Connector server: service:jmx:rmi://lharel2/jndi/rmi://lharel2:1090/jmxconnector
Run Code Online (Sandbox Code Playgroud)
从DEBUG服务器日志中,我在有问题的时间得到这些行:
2009-12-18 18:51:00,886 DEBUG [org.jboss.deployment.MappedReferenceMetaDataResolverDeployer] (main) vfsfile:/C:/QC/Views/QCDev/jboss-5.1.0.GA/server/default/deploy/jmx-console.war/ endpoint mappings:
2009-12-18 18:51:00,886 DEBUG [org.jboss.deployment.MappedReferenceMetaDataResolverDeployer] (main) Processing unit=jmx-console.war, structure: jmx-console.war
2009-12-18 18:52:35,209 DEBUG [org.jboss.deployment.OptAnnotationMetaDataDeployer] (main) Deployment is metadata-complete, skipping annotation processing, ejbJarMetaData=null, jbossWebMetaData=org.jboss.metadata.web.spec.Web23MetaData@1f, jbossClientMetaData=null, metaDataCompleteIsDefault=false
Run Code Online (Sandbox Code Playgroud)
项目中没有EJB.
内存设置为:
-Xms128m -Xmx512m -XX:MaxPermSize=256m
Run Code Online (Sandbox Code Playgroud)
你知道如何改善JBoss的开始时间吗?
更新:到目前为止没有运气,我尝试了shreeni的建议(改变扫描xmls).服务器未在调试模式下运行,因此MicSim的建议无关紧要
在没有更多信息的情况下射入蓝天
网络超时:部署jmx-console.war时延迟1.5分钟可能表示网络超时(例如3 x 30秒).尝试使用-b
命令行参数或jboss.bind.address
系统属性启动JBoss并将其绑定到特定的IP地址.另外,请尝试确保系统上的主机和DNS解析设置正确无误.
JMX也使用RMI,您可能希望将RMI服务器主机名设置为系统属性.在某些Linux发行版中,RMI在查找正确的主机名时遇到问题,而jmx-console.war可能会尝试连接到"错误的localhost".系统属性是java.rmi.server.hostname
系统跟踪:如果这没有帮助,您可能希望用来strace
启动java进程,这样您就可以看到系统挂起的点(如果由于网络超时或类似情况它确实挂起).
这是日志中一个非常大的间隙。我建议更改日志配置以在 DEBUG 级别记录所有内容,而不是 INFO。这将生成更多的日志条目,但希望能帮助您缩小范围。
-Djboss.server.log.threshold=DEBUG
最简单的方法是在启动 JBoss 时设置系统属性
归档时间: |
|
查看次数: |
29982 次 |
最近记录: |