2011-01-06 15 views
0

Wir haben unsere Anwendung im WAS 6-Cluster bereitgestellt. Und seit kurzem gibt es folgende Ausnahme.websphere 6.0.1 löst javax.resource.ResourceException aus: Die Back-End-Ressource ist derzeit nicht verfügbar

javax.resource.ResourceException: Die Back-End-Ressource ist derzeit nicht verfügbar. Feststeckverbindungen wurden erkannt. ......

Kann mir jemand erklären, warum Db-Verbindung wurde nicht von der App freigegeben und kam zurück zum freien Pool? Wie kann ich feststellen, welche Verbindung blockiert wird, um freigegeben zu werden? Ich plane Thread-Dump jede Gebührensekunde zu nehmen.

Alles funktionierte gut und plötzlich begannen wir, diese Ausnahme zu bekommen, was ein Problem mit neuen Benutzern verursacht, die versuchen, sich in die App einzuloggen.

Jede Eingabe wird sehr geschätzt. Ich habe sehr wenig Wissen über WAS Admin. auf jeden Fall aufmerksam auf den WebContainer Pool

Dank

Antwort

1

Versuchen Sie, den PMI in der WAS-Konsole unter Überwachung und Optimierung verwenden, dies ermöglicht es Ihnen, sowohl die JDBC und Thread-Pool-Nutzung in Echtzeit zu verfolgen, würde ich und Überprüfen Sie, ob die Größe des Pools mit der JDBC-Verbindung verfolgt wird.

Wenn die Pools selbst erschöpft sind immer die Größe erhöhen kann einige Fußraum zu schaffen, indem die maximalen Verbindungseinstellungen für die JDBC-Verbindung unter Ressourcen Upping -> Datenquellen -> $ NAME -> Connection Pool und der andere Verbindungspool Einstellungen unter Server -> $ SERVERNAME -> Weitere Eigenschaften -> Thread Pool

Sicherstellen, dass die Datenbank Ihre Verbindung zu auch genügend freie Verbindungen hat, wäre auch eine Idee! :)

Wenn Sie Pool-Verbindungen lecken, dann ist es wahrscheinlich der Code fehlt eine enge Verbindung irgendwo.

+0

Dank ein Protokoll. Dies wird mir helfen, den Server und die Ressourcen zu überwachen. – user509755