Ich bin ein Entwickler, der eine Website auf einer CentOS 5-Box mit Apache Tomcat 6.x, Alfresco Labs 3 (die Standalone-WAR-Datei) und ein paar benutzerdefinierten Webapps läuft.Warum reagiert meine Tomcat/Alfresco-Site nicht jeden halben Tag oder so?
Der Server ist in den letzten Monaten ohne Probleme in Betrieb gewesen, aber gerade erst hat jemand ein Bild über Alfresco hochgeladen und die Seite reagiert nicht mehr. Darüber hinaus reagierten alle Webapps, die über Tomcat laufen, nicht mehr. Ich versuchte Telnet lokal (d. H. Telnet Localhost 80), aber es Timeout ohne Verbindung.
in der letzten Protokolldatei suchen (localhost ... log) sah ich einen Stack-Trace mit java.lang.OutOfMemoryError Start: space Ausfall PermGen und nach einigen googeln die max zul Größe von 128 MB bis 384 MB erhöht. Wir dachten, dass dies das Problem zu beheben, aber heute hat es wieder und Kater ist wieder nach unten (außer ohne den PermGen Stack-Trace in den Protokollen)
Der andere Stack-Trace, das ist die folgende Aufspringen hält:
Jun 16, 2009 3:38:26 PM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet default threw exception
java.lang.IllegalStateException
at org.apache.catalina.connector.ResponseFacade.sendError(ResponseFacade.java:407)
at org.apache.struts2.dispatcher.Dispatcher.sendError(Dispatcher.java:707)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:485)
at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
Ich kann nicht sagen, ob das verwandt ist, da Tomcat anscheinend nicht wirklich abstürzt, aber es erscheint ziemlich oft. Ein anderer Grund, warum ich es nicht für eine große Sache halte, ist, dass es in unseren Logs für den letzten Monat oder so auftaucht.
Ansonsten bin ich nicht ganz sicher, was zu tun ist. Es gibt nicht wirklich irgendwelche anderen Hinweise, die ich überprüfen kann. Ich vermute, dass dies ein Alfresco-Problem ist, aber ich kann es nicht sicher sagen. Das einzige, was ich heute getan habe, um die Konfiguration zu ändern, war, die Permgen-Größe auf 512 MB zu erhöhen, aber das hilft vielleicht nicht, da wir diesmal nicht den PermGen-Fehler erhalten haben.
Irgendwelche Ideen?
Es scheint, dass Sie hier zwei verschiedene Probleme haben. Du hast eine behoben und eine andere aufgedeckt. Leider habe ich keine Ahnung, wie dies eine IllegalStateException von Tomcat aus zu diagnostizieren. Versuchen Sie, den Tomcat-Quellcode herunterzuladen und zu sehen, was an dieser Zeile passiert. – skaffman
Dies ist nicht wirklich auf die Programmierung bezogen, aber der Fehler entsteht durch die Anwendung von Filtern. Vielleicht möchten Sie dort anfangen. – cletus
Dies ist passender auf Serverfault.com gefragt und sollte Ihnen bessere Antworten geben – jitter