我在JBoss的WAR文件中部署了一个Camel应用程序,其弹出配置用于启动Camel上下文。
它在JBoss EAP 7.0.0.GA上部署并运行得非常好。
如果我想更改应用程序所依赖的属性文件中的值并触摸war文件,它通常会重新部署应用程序。但在某些情况下它会失败。
我在server.log中获得以下内容:
2017-07-25 12:05:26.671 INFO class=org.apache.camel.impl.DefaultShutdownStrategy thread="ServerService Thread Pool -- 74" Starting to graceful shutdown 12 routes (timeout 300 seconds)
2017-07-25 12:05:26.725 INFO class=org.apache.camel.impl.DefaultShutdownStrategy thread="Camel (interfacedb) thread #2 - ShutdownTask" Waiting as there are still 4 inflight and pending exchanges to complete, timeout in 300 seconds. Inflights per route: [interfacePersistDirect = 1, route1 = 1, pullFromTransferEntityTable = 1, lastScheduledRun = 1]
...
2017-07-25 12:10:26.691 WARN class=org.apache.camel.impl.DefaultShutdownStrategy thread="ServerService Thread Pool -- 74" Timeout occurred during graceful shutdown. Forcing the routes to be shutdown now. Notice: some resources may still be running as graceful shutdown did not complete successfully.
2017-07-25 12:10:26.691 WARN class=org.apache.camel.impl.DefaultShutdownStrategy thread="Camel (interfacedb) thread #2 - ShutdownTask" Interrupted while waiting during graceful shutdown, will force shutdown now.
2017-07-25 12:10:26.694 INFO class=org.apache.camel.impl.DefaultShutdownStrategy thread="ServerService Thread Pool -- 74" Graceful shutdown of 12 routes completed in 300 seconds
此后应用程序将不会再次启动。 JBoss在deployments文件夹中的myApp.war.failed文件中报告以下内容。
"WFLYDS0022: Did not receive a response to the deployment operation within the allowed timeout period [600 seconds]. Check the server configuration file and the server logs to find more about the status of the deployment."
应用程序通常部署速度超过600秒。我可以触摸war文件或删除.failed文件,这通常会触发重新部署,但JBoss会继续在.failed文件中给出上述错误。
如果我重新启动JBoss VM,应用程序会正常启动,但我想避免重新启动JBoss实例上运行的其他应用程序。
有什么建议吗?