Feststellen, warum die Kapazität einer Warteschlange erschöpft ist
Wenn die Kapazität einer Warteschlange erschöpft ist, werden Ausnahmen zurückgegeben, wenn Sie versuchen, eine Nachricht für diese Warteschlange zu erzeugen. Die naheliegendste Ursache ist die, dass die erzeugende Anwendung schneller Nachrichten erzeugt, als die konsumierende Anwendung konsumieren kann. Für die Situation können aber auch unterbrochene Kommunikationsverbindungen oder Fehler in der konsumierenden Anwendung verantwortlich sein.
Informationen zu diesem Vorgang
Vorgehensweise
- Klicken Sie auf Serviceintegration -> Busse -> Busname -> [Zielressourcen] Ziele und anschließend auf den Namen der Warteschlange, die voll ist.
- Klicken Sie auf [Zugehörige Elemente] Topologie der Anwendungsressourcen, und verwenden Sie die Anzeige
Anwendungsressourcen für dieses Ziel, um die Konfiguration der Anwendungen und
JMS-Ressourcen zu überprüfen, die das Ziel verwenden.
Diese Anzeige kann Ihnen helfen, die Ursache des Problems zu ermitteln, weil sie Ihnen eine Übersicht über viele relevante Ressourcen liefert.
- Klicken Sie auf Serviceintegration -> Busse -> Busname -> [Zielressourcen] Ziele -> Name_der_Warteschlange -> [Nachrichtenpunkte] Warteschlangenpunkte -> Name_des_Warteschlangenpunkts, und überprüfen Sie dann auf der Registerkarte
Laufzeit den Wert der Einstellung Aktuelle Nachrichtenanzahl. Wenn dieser Wert kontinuierlich steigt, ist die erzeugende
Anwendung zu schnell für den Konsumenten. Anmerkung: Wenn das Ziel mehrere Warteschlangenpunkte hat oder vermittelt wird, führen Sie die folgenden Prüfungen für jeden Nachrichtenpunkt durch, an den die Nachrichten gesendet bzw. von dem sie konsumiert werden können.
- Ermitteln Sie die Messaging-Engines, mit denen die erzeugenden und konsumierenden Anwendungen verbunden sind.
- Wenn die erzeugenden und die konsumierenden Anwendungen mit unterschiedlichen
Messaging-Engines verbunden sind, werden die Nachrichten über einen fernen Warteschlangenpunkt weitergeleitet.
Klicken Sie für die Messaging-Engine des Erzeugers auf Ferne
Warteschlangenpunkte und anschließend auf den Warteschlangenpunkt, der den Warteschlangenpunkt des Konsumenten darstellt.
Überprüfen Sie die Anzahl aktueller abgehender Nachrichten.
Wenn dieser Wert klein ist, ist das Problem nicht beim fernen Warteschlangenpunkt zu suchen.
Vergewissern Sie sich, dass die konsumierende Anwendung gestartet ist und fehlerfrei Nachrichten konsumiert.
Falls die Anzahl aktueller Nachrichten nur geringfügig unter dem oberen Schwellenwert für Nachrichten liegt,
führen Sie die folgenden Prüfungen durch:
- Vergewissern Sie sich, dass die beiden Messaging-Engines
miteinander kommunizieren können. Lesen Sie hierzu den Artikel Fehlerbehebung bei der Serviceintegration: Kommunikation zwischen zwei Messaging-Engines in einem Bus überprüfen. Wenn die
Messaging-Engines miteinander kommunizieren können, erhöhen Sie das Intervall, in dem Nachrichten erzeugt werden.
Falls die Messaging-Engines nicht miteinander kommunizieren können, beheben Sie den Fehler.
Wenn nach dem Wiederherstellen der Kommunikation beim Verarbeiten der aufgelaufenen
Nachrichten Fehler auftreten und keine wichtigen Nachrichten anstehen, sollten Sie alle Nachrichten
am fernen Nachrichtenpunkt löschen.
Zum Löschen der Nachrichten wählen Sie den fernen Nachrichtenpunkt aus, und klicken Sie anschließend auf
Alle Nachrichten löschen. Anmerkung: Gelöschte Nachrichten können nicht wiederhergestellt werden.
- Vergewissern Sie sich, dass keine Nachrichten vorhanden sind, die im Status "Festschreiben" warten. Wenn solche Nachrichten vorhanden sind, ist ein Ressourcenmanager, wie z. B. eine Datenbank, blockiert. Beheben Sie den Fehler im Ressourcenmanager. Sollte dieser Versuch fehlschlagen, notieren Sie die Transaktions-ID der Nachricht, und klicken Sie auf Server -> Servertypen -> WebSphere-Anwendungsserver -> Servername -> Laufzeit > [Weitere Eigenschaften] Transaktionsservice, um die allgemeinen Eigenschaften für den Transaktionsservice, einschließlich der Anzahl der Transaktionen, anzuzeigen. Verwenden Sie die Links Überprüfen, um die Transaktion aufzulösen, deren globale ID mit der Transaktions-ID der Nachricht übereinstimmt.
- Vergewissern Sie sich, dass die beiden Messaging-Engines
miteinander kommunizieren können. Lesen Sie hierzu den Artikel Fehlerbehebung bei der Serviceintegration: Kommunikation zwischen zwei Messaging-Engines in einem Bus überprüfen. Wenn die
Messaging-Engines miteinander kommunizieren können, erhöhen Sie das Intervall, in dem Nachrichten erzeugt werden.
Falls die Messaging-Engines nicht miteinander kommunizieren können, beheben Sie den Fehler.
Wenn nach dem Wiederherstellen der Kommunikation beim Verarbeiten der aufgelaufenen
Nachrichten Fehler auftreten und keine wichtigen Nachrichten anstehen, sollten Sie alle Nachrichten
am fernen Nachrichtenpunkt löschen.
Zum Löschen der Nachrichten wählen Sie den fernen Nachrichtenpunkt aus, und klicken Sie anschließend auf
Alle Nachrichten löschen.
Unterartikel
Die Messaging-Engine bestimmen, mit der eine Anwendung verbunden ist
Falls Ihre Anwendung keine Nachrichten empfangen oder erzeugen kann, müssen Sie im Rahmen der Fehlerbehebung feststellen, mit welcher Messaging-Engine die Anwendung verbunden ist.Fehlerbehebung bei der Serviceintegration: Kommunikation zwischen zwei Messaging-Engines in einem Bus überprüfen
Wenn Sie ein Problem in Ihrem Serviceintegrationssystem beheben müssen, sollten Sie zuerst prüfen, ob zwei Messaging-Engines miteinander kommunizieren können.
Zugehörige Informationen:


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tju_queue_full
Dateiname:tju_queue_full.html