Tomcat 6 geht nach Erreichen der maximalen Anzahl von Threads nach unten

9

Unser Tomcat 6.0.29 geht runter, nachdem es die maximale Anzahl von Threads erreicht hat. Ich würde wirklich jede Hilfe damit schätzen, weil es ein Produktionsserver ist.

Hier ist ein Teil der Datei catalina.log:

%Vor%     
user650585 08.03.2011, 22:27
quelle

4 Antworten

4

Nimm einen Thread Dump, um zu sehen, was an all deinen Threads festgehalten wird. Der Stacktrace für jeden Thread ist ein Hinweis auf Ihr Problem mehr als der catalina.out-Fehler war.

Windows

Drücken Sie im Konsolenfenster ctrl + break

Unix

Geben Sie in der Befehlszeile Folgendes ein: kill -3 <pid>

Diese können bei einer laufenden Produktionsinstanz sicher übernommen werden.

    
Sean 09.03.2011 15:02
quelle
1

Es sieht so aus, als ob Ihr Executor auf 500 oder 600 Threads eingestellt ist. Wenn jeder Thread normalerweise auf eine DB-Verbindung zugreift, haben Sie den dbcp-Pool auf denselben oder einen höheren Wert gesetzt?

Sie können auch Ihre dbcp-Poolkonfiguration

überprüfen     
pd40 01.06.2012 00:41
quelle
0

Sehen Sie sich den Auslagerungsspeicher und andere Ressourcen an. Ich hatte eine Erfahrung, bei der die Speichernutzung jedes Threads zu hoch war (schlechtes App-Design), was dazu führte, dass der Server nicht mehr reagierte. Wenn dies der Fall ist (oder einfach testen), reduzieren Sie die Anzahl der Threads und sehen Sie, ob es noch passiert.

    
Colin 08.03.2011 22:36
quelle
0

Sie könnten BTrace ausprobieren.

Fügen Sie eine Probe an org.apache.catalina.startup.Catalina class, stopServer methods an. Wenn das nicht hilft, versuchen Sie, andere Shutdown-Hooks zu finden und BTrace-Profiler an sie anzuhängen.

Sie sollten in der Lage sein, den vollständigen Stack-Trace zu erhalten, der auf denjenigen verweist, der das Herunterfahren angefordert hat.

    
mindas 08.03.2011 22:56
quelle

Tags und Links