6

我工作的大学使用 Tomcat/Railo 服务器来呈现 ColdFusion 页面。大约 6 个月(在我被录用之前),服务器在不同的时间随机崩溃,通常 runnignservice railo_ctl restart已经修复了 hte 问题,但最近这并没有正常工作。

在过去的两周里,我已经缩小了问题的范围,而且我相当确定 Tomcat 的问题出在哪里。我从来没有使用过Tomcat,所以我不知道从哪里开始。我查看了 Catalina.out 文件,并查看了服务器崩溃的时间并发现了以下错误消息:

Sep 18, 2013 3:17:12 PM org.apache.catalina.core.StandardServer await.
INFO: A valid shutdown command was received via the shutdown port. Stopping the Server instanc
Sep 18, 2013 3:17:12 PM org.apache.coyote.AbstractProtocol pause
INFO: Pausing ProtocolHandler ["http-bio-8888"]
Sep 18, 2013 3:17:13 PM org.apache.coyote.AbstractProtocol pause
INFO: Pausing ProtocolHandler ["ajp-bio-8009"]
Sep 18, 2013 3:17:14 PM org.apache.catalina.core.StandardService stopInternal
INFO: Stopping service Catalina
Sep 18, 2013 3:17:19 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [] is still processing a request that has yet to finish. This is very likely to create a memory leak. You can control the time allowed for requests to finish by using the unloadDelay attribute of the standard Context implementation. 

这个严重的错误打印了大概 200 次

Sep 18, 2013 11:19:26 AM org.apache.coyote.AbstractProtocol stop
INFO: Stopping ProtocolHandler ["http-bio-8888"]
Sep 18, 2013 11:19:26 AM org.apache.coyote.AbstractProtocol stop
INFO: Stopping ProtocolHandler ["ajp-bio-8009"]
Sep 18, 2013 11:19:26 AM org.apache.coyote.AbstractProtocol destroy
INFO: Destroying ProtocolHandler ["http-bio-8888"]
Sep 18, 2013 11:19:26 AM org.apache.coyote.AbstractProtocol destroy
INFO: Destroying ProtocolHandler ["ajp-bio-8009"]
Sep 18, 2013 11:19:35 AM org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: 
/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib

我也注意到出现了这个错误,但它似乎并没有在服务器崩溃的同时弹出

Sep 18, 2013 11:06:39 AM org.apache.catalina.loader.WebappClassLoader findResourceInternal
INFO: Illegal access: this web application instance has been stopped already.  Could not load META-INF/services/org.apache.xerces.xni.parser.XMLParserConfiguration.  The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
Sep 18, 2013 11:06:39 AM org.apache.catalina.loader.WebappClassLoader loadClass
INFO: Illegal access: this web application instance has been stopped already.  Could not load org.apache.xerces.parsers.XIncludeAwareParserConfiguration.  The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
java.lang.IllegalStateException
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1564)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1523)
    at org.apache.xerces.parsers.ObjectFactory.findProviderClass(Unknown Source)
    at org.apache.xerces.parsers.ObjectFactory.newInstance(Unknown Source)
    at org.apache.xerces.parsers.ObjectFactory.createObject(Unknown Source)
    at org.apache.xerces.parsers.ObjectFactory.createObject(Unknown Source)
    at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source)
    at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source)
    at org.apache.xerces.jaxp.DocumentBuilderImpl.<init>(Unknown Source)
    at org.apache.xerces.jaxp.DocumentBuilderImpl.<init>(Unknown Source)
    at org.apache.xerces.jaxp.DocumentBuilderFactoryImpl.setAttribute(Unknown Source)
    at railo.runtime.text.xml.XMLUtil.setAttributeEL(XMLUtil.java:270)
    at railo.runtime.text.xml.XMLUtil.parse(XMLUtil.java:221)
    at railo.runtime.functions.decision.IsXML.call(IsXML.java:22)
    at content.feed.feedmanager_cfc$cf._2(/var/www/vhosts/my_web_app/requirements/mura/content/feed/feedManager.cfc:346)
    at content.feed.feedmanager_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/content/feed/feedManager.cfc)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.call(UDFImpl.java:384)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:615)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:502)
    at railo.runtime.ComponentImpl.call(ComponentImpl.java:1815)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:733)
    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1480)
    at fsu.includes.display_objects.dsp_feed_cfm$cf.call(/var/www/vhosts/my_web_app/fsu/includes/display_objects/dsp_feed.cfm:132)
    at railo.runtime.PageContextImpl.doInclude(PageContextImpl.java:799)
    at railo.runtime.PageContextImpl.doInclude(PageContextImpl.java:746)
    at content.contentrenderer_cfc$cf._5(/var/www/vhosts/my_web_app/requirements/mura/content/contentRenderer.cfc:956)
    at content.contentrenderer_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/content/contentRenderer.cfc)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.call(UDFImpl.java:384)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:738)
    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1480)
    at content.contentrenderer_cfc$cf._5(/var/www/vhosts/my_web_app/requirements/mura/content/contentRenderer.cfc:902)
    at content.contentrenderer_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/content/contentRenderer.cfc)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.callWithNamedValues(UDFImpl.java:377)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithNamedValues(VariableUtilImpl.java:774)
    at railo.runtime.PageContextImpl.getFunctionWithNamedValues(PageContextImpl.java:1495)
    at content.contentrenderer_cfc$cf._call000069(/var/www/vhosts/my_web_app/requirements/mura/content/contentRenderer.cfc:1113)
    at content.contentrenderer_cfc$cf._5(/var/www/vhosts/my_web_app/requirements/mura/content/contentRenderer.cfc:1113)
    at content.contentrenderer_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/content/contentRenderer.cfc)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.call(UDFImpl.java:384)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:738)
    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1480)
    at formbuilder_21.eventhandlers.contentrenderer_cfm$cf.udfCall(/var/www/vhosts/my_web_app/plugins/FormBuilder_21/eventHandlers/contentRenderer.cfm:27)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.call(UDFImpl.java:384)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:738)
    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1480)
    at ldapsurvey_25.eventhandlers.contentrenderer_cfm$cf.udfCall(/var/www/vhosts/my_web_app/plugins/LDAPSurvey_25/eventHandlers/contentRenderer.cfm:73)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.call(UDFImpl.java:384)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:721)
    at railo.runtime.util.VariableUtilImpl.callFunction(VariableUtilImpl.java:706)
    at railo.runtime.interpreter.ref.func.UDFCall.getValue(UDFCall.java:52)
    at railo.runtime.interpreter.CFMLExpressionInterpreter.interpret(CFMLExpressionInterpreter.java:187)
    at railo.runtime.functions.dynamicEvaluation.Evaluate._call(Evaluate.java:76)
    at railo.runtime.functions.dynamicEvaluation.Evaluate.call(Evaluate.java:69)
    at railo.runtime.functions.dynamicEvaluation.Evaluate.call(Evaluate.java:22)
    at content.contentrenderer_cfc$cf._8(/var/www/vhosts/my_web_app/requirements/mura/content/contentRenderer.cfc:1817)
    at content.contentrenderer_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/content/contentRenderer.cfc)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.call(UDFImpl.java:384)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:738)
    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1480)
    at content.contentrenderer_cfc$cf._9(/var/www/vhosts/my_web_app/requirements/mura/content/contentRenderer.cfc:2141)
    at content.contentrenderer_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/content/contentRenderer.cfc)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.call(UDFImpl.java:384)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:615)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:502)
    at railo.runtime.ComponentImpl.call(ComponentImpl.java:1815)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:733)
    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1480)
    at in_contexteditor_16135.incontexteditor.eventhandler_cfc$cf.udfCall(/var/www/vhosts/my_web_app/plugins/In-ContextEditor_16/inContextEditor/EventHandler.cfc:120)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.callWithNamedValues(UDFImpl.java:377)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:616)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:502)
    at railo.runtime.ComponentImpl.callWithNamedValues(ComponentImpl.java:1830)
    at railo.runtime.tag.Invoke.doComponent(Invoke.java:210)
    at railo.runtime.tag.Invoke.doEndTag(Invoke.java:183)
    at plugin.pluginmanager_cfc$cf._call000020(/var/www/vhosts/my_web_app/requirements/mura/plugin/pluginManager.cfc:1478)
    at plugin.pluginmanager_cfc$cf._3(/var/www/vhosts/my_web_app/requirements/mura/plugin/pluginManager.cfc:1391)
    at plugin.pluginmanager_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/plugin/pluginManager.cfc)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.call(UDFImpl.java:384)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:738)
    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1480)
    at plugin.pluginmanager_cfc$cf._3(/var/www/vhosts/my_web_app/requirements/mura/plugin/pluginManager.cfc:1219)
    at plugin.pluginmanager_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/plugin/pluginManager.cfc)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.call(UDFImpl.java:384)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:615)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:502)
    at railo.runtime.ComponentImpl.call(ComponentImpl.java:1815)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:733)
    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1480)
    at content.contentrenderer_cfc$cf._6(/var/www/vhosts/my_web_app/requirements/mura/content/contentRenderer.cfc:1268)
    at content.contentrenderer_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/content/contentRenderer.cfc)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.callWithNamedValues(UDFImpl.java:377)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:616)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:502)
    at railo.runtime.ComponentImpl.callWithNamedValues(ComponentImpl.java:1830)
    at railo.runtime.tag.Invoke.doComponent(Invoke.java:210)
    at railo.runtime.tag.Invoke.doEndTag(Invoke.java:183)
    at murascope_cfc$cf._1(/var/www/vhosts/my_web_app/requirements/mura/MuraScope.cfc:110)
    at murascope_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/MuraScope.cfc)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.call(UDFImpl.java:384)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:615)
    at railo.runtime.ComponentImpl.onMissingMethod(ComponentImpl.java:539)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:504)
    at railo.runtime.ComponentImpl.callWithNamedValues(ComponentImpl.java:1834)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithNamedValues(VariableUtilImpl.java:769)
    at railo.runtime.PageContextImpl.getFunctionWithNamedValues(PageContextImpl.java:1495)
    at fsu.includes.themes.fsu.templates.default_cfm$cf.call(/var/www/vhosts/my_web_app/fsu/includes/themes/fsu/templates/default.cfm:109)
    at railo.runtime.PageContextImpl.doInclude(PageContextImpl.java:799)
    at railo.runtime.PageContextImpl.doInclude(PageContextImpl.java:746)
    at translator.standardhtmltranslator_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/Translator/standardHTMLTranslator.cfc:80)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.callWithNamedValues(UDFImpl.java:377)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:616)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:502)
    at railo.runtime.ComponentImpl.callWithNamedValues(ComponentImpl.java:1834)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithNamedValues(VariableUtilImpl.java:769)
    at railo.runtime.PageContextImpl.getFunctionWithNamedValues(PageContextImpl.java:1495)
    at plugin.pluginstandardeventwrapper_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/plugin/pluginStandardEventWrapper.cfc:121)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.call(UDFImpl.java:384)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:615)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:502)
    at railo.runtime.ComponentImpl.call(ComponentImpl.java:1815)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:733)
    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1480)
    at handler.standardeventshandler_cfc$cf._1(/var/www/vhosts/my_web_app/requirements/mura/Handler/standardEventsHandler.cfc:60)
    at handler.standardeventshandler_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/Handler/standardEventsHandler.cfc)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.callWithNamedValues(UDFImpl.java:377)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:616)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:502)
    at railo.runtime.ComponentImpl.callWithNamedValues(ComponentImpl.java:1830)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithNamedValues(VariableUtilImpl.java:755)
    at railo.runtime.util.VariableUtilImpl.callFunction(VariableUtilImpl.java:705)
    at railo.runtime.interpreter.ref.func.UDFCall.getValue(UDFCall.java:52)
    at railo.runtime.interpreter.CFMLExpressionInterpreter.interpret(CFMLExpressionInterpreter.java:187)
    at railo.runtime.functions.dynamicEvaluation.Evaluate._call(Evaluate.java:76)
    at railo.runtime.functions.dynamicEvaluation.Evaluate.call(Evaluate.java:69)
    at railo.runtime.functions.dynamicEvaluation.Evaluate.call(Evaluate.java:22)
    at plugin.pluginstandardeventwrapper_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/plugin/pluginStandardEventWrapper.cfc:84)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.call(UDFImpl.java:384)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:615)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:502)
    at railo.runtime.ComponentImpl.call(ComponentImpl.java:1815)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:733)
    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1480)
    at handler.standardeventshandler_cfc$cf._2(/var/www/vhosts/my_web_app/requirements/mura/Handler/standardEventsHandler.cfc:311)
    at handler.standardeventshandler_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/Handler/standardEventsHandler.cfc)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.callWithNamedValues(UDFImpl.java:377)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:616)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:502)
    at railo.runtime.ComponentImpl.callWithNamedValues(ComponentImpl.java:1830)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithNamedValues(VariableUtilImpl.java:755)
    at railo.runtime.util.VariableUtilImpl.callFunction(VariableUtilImpl.java:705)
    at railo.runtime.interpreter.ref.func.UDFCall.getValue(UDFCall.java:52)
    at railo.runtime.interpreter.CFMLExpressionInterpreter.interpret(CFMLExpressionInterpreter.java:187)
    at railo.runtime.functions.dynamicEvaluation.Evaluate._call(Evaluate.java:76)
    at railo.runtime.functions.dynamicEvaluation.Evaluate.call(Evaluate.java:69)
    at railo.runtime.functions.dynamicEvaluation.Evaluate.call(Evaluate.java:22)
    at plugin.pluginstandardeventwrapper_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/plugin/pluginStandardEventWrapper.cfc:84)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.call(UDFImpl.java:384)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:615)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:502)
    at railo.runtime.ComponentImpl.call(ComponentImpl.java:1815)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:733)
    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1480)
    at servlet_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/servlet.cfc:85)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.call(UDFImpl.java:384)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:615)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:502)
    at railo.runtime.ComponentImpl.call(ComponentImpl.java:1815)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:733)
    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1480)
    at mura_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/Mura.cfc:84)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.call(UDFImpl.java:384)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:615)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:502)
    at railo.runtime.ComponentImpl.call(ComponentImpl.java:1815)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:733)
    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1480)
    at content.contentserver_cfc$cf._1(/var/www/vhosts/my_web_app/requirements/mura/content/contentServer.cfc:225)
    at content.contentserver_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/content/contentServer.cfc)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.call(UDFImpl.java:384)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:738)
    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1480)
    at content.contentserver_cfc$cf._1(/var/www/vhosts/my_web_app/requirements/mura/content/contentServer.cfc:271)
    at content.contentserver_cfc$cf.udfCall(/var/www/vhosts/my_web_app/requirements/mura/content/contentServer.cfc)
    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215)
    at railo.runtime.type.UDFImpl._call(UDFImpl.java:434)
    at railo.runtime.type.UDFImpl.call(UDFImpl.java:384)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:615)
    at railo.runtime.ComponentImpl._call(ComponentImpl.java:502)
    at railo.runtime.ComponentImpl.call(ComponentImpl.java:1815)
    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:733)
    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1480)
    at index_cfm$cf.call(/var/www/vhosts/my_web_app/index.cfm:53)
    at railo.runtime.PageContextImpl.doInclude(PageContextImpl.java:799)
    at railo.runtime.PageContextImpl.doInclude(PageContextImpl.java:751)
    at railo.runtime.listener.ModernAppListener._onRequest(ModernAppListener.java:179)
    at railo.runtime.listener.MixedAppListener.onRequest(MixedAppListener.java:23)
    at railo.runtime.PageContextImpl.execute(PageContextImpl.java:2035)
    at railo.runtime.PageContextImpl.execute(PageContextImpl.java:2002)
    at railo.runtime.engine.CFMLEngineImpl.serviceCFML(CFMLEngineImpl.java:297)
    at railo.loader.servlet.CFMLServlet.service(CFMLServlet.java:32)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:964)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:302)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

对此的任何想法或建议将不胜感激。

4

2 回答 2

3

我相信这是您问题的根源:

严重:Web 应用程序 [] 仍在处理尚未完成的请求

您的应用程序中的某些内容导致线程挂起,并且可能死亡。不幸的是,这类错误极难诊断。如果我是你,我会做的是使用 FusionReactor 之类的东西监控应用程序,并特别注意应用程序中长时间运行的请求。这可以提供有关您的应用程序的哪一部分导致这些问题的线索。

我会将 FusionReactor 安装在一个单独的 Tomcat 实例中,这样它就可以监控您的应用程序,直到它死亡为止。同样,这可以提供更多关于哪些线程正在挂起和/或死亡的线索。

FusionReactor 是一种商业产品,但附带了 30 天的试用期,在该试用期内它可以完全发挥作用。如果你要管理这个应用程序,许可证可能是值得的,但如果你不能这样做,那么还有其他 JVM 监控产品,如 VisualVM 等。它们不像 FusionReactor 那样具有针对性,但它们仍然可以提供帮助。

高温高压

于 2013-09-20T17:26:10.860 回答
2

如此处所述,打开 JVM 内存日志记录。然后将这些日志提供给GCViewer

这应该可以让您很好地了解内存使用情况。您会看到内存使用的锯齿形模式,但是每次锯齿形模式的底部有多低才能告诉您是否有泄漏。如果锯齿的波谷向上行进,那就是一个迹象。

您还可以在进程上使用 kill -3 来告诉它将当前线程转储到其日志文件中。如果您间隔 5 秒执行 5 次,您可以在Samurai中打开日志

您正在寻找在每个连续转储中堆栈看起来相同或相似的线程。他们会被困住的。进程崩溃时的 CPU 负载如何?

于 2013-09-20T20:31:05.277 回答