WebSphere Message Broker Version 8.0.0.5 Betriebssysteme: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Sehen Sie sich die Informationen zur aktuellen Produktversion im IBM Integration Bus Version 9.0 an.

Skalierbarkeit und Leistung von SAP-Adaptern

Sie können die Anzahl der Empfangsprogramme auf dem Adapter sowie die Anzahl der zusätzlichen Instanzen im Nachrichtenfluss entsprechend konfigurieren, dass Verzögerungen bei der Verarbeitung synchroner Aufrufe von SAP vermieden werden, und so die Leistung verbessern.

Der SAP-Eingangsadapter empfängt synchrone Aufrufe von SAP. Über die Adaptereigenschaft mit dem Namen Number of listeners (Anzahl der Listener) wird die Anzahl an Threads eingestellt, die den Adapter auf den Eingang der SAP-Programm-ID überwachen, um so die maximale Anzahl gleichzeitiger Aufrufe zu steuern. Die Empfangsprogramme senden die Eingangsparameter dieser Aufrufe zur Verarbeitung an den SAPInput-Knoten, und die Ausgangsparameter werden an den SAPReply-Knoten gesendet.

Erhält das Empfangsprogramm einen Aufruf von SAP, wird die Verarbeitung blockiert, bis eine Nachrichtenflussinstanz mit dem SAPInput-Knoten verfügbar ist. Wenn eine Nachrichtenflussinstanz verfügbar geworden ist und mit der Verarbeitung der Importparameter begonnen hat, blockiert das Empfangsprogramm erneut die Verarbeitung, bis eine Nachricht, die die Exportparameter enthält, an den SAPReply-Knoten weitergegeben wird.

Die Zeitdauer zwischen dem Senden der Nachricht durch den SAPInput-Knoten und dem Empfang der Antwortnachricht durch den SAPReply-Knoten kann durch die Eigenschaft für zusätzliche Instanzen im Nachrichtenfluss beeinflusst werden. Um Verzögerungen bei der Verarbeitung zu vermeiden, muss die maximale Anzahl der Empfangsprogramme und die Anzahl zusätzlicher Instanzen des Nachrichtenflusses, der den SAPInput- und den SAPReply-Knoten enthält, optimiert werden. Die Anzahl zusätzlicher Instanzen kann auf Nachrichtenflussebene oder auf dem SAPInput-Knoten selbst konfiguriert werden.

Einschränkungen

Die Anzahl der Empfangsprogramme (Listeners) ist durch die SAP-Konfiguration begrenzt. In der SAP-Transaktion SMQS können Sie für jedes RFC-Ziel die Eigenschaft für die maximale Verbindungsanzahl anzeigen und ändern. Wenn die konfigurierte Anzahl der Empfangsprogramme größer ist als die maximale Anzahl der Verbindungen, hat dies keine Auswirkungen.

Für jede zusätzliche Instanz des Nachrichtenflusses werden in Abhängigkeit von den im Nachrichtenfluss enthaltenen Knotentypen zusätzliche Ressourcen von jedem Knoten verwendet.

Szenarios

Im folgenden Diagramm ist ein grundlegendes Szenario dargestellt, bei dem die Anzahl der Empfangsprogramme gleich der Anzahl der zusätzlichen Instanzen des Nachrichtenflusses ist. In diesem Beispiel wurden drei Empfangsprogramme und drei Nachrichtenflussinstanzen konfiguriert.
Dieses Diagramm stellt die folgenden Schritte dar.
  1. SAP gibt drei Aufrufe aus, wobei jeder Aufruf von einem anderen Empfangsprogramm empfangen wird.
  2. Jedes Empfangsprogramm sendet die Eingangsparameter des jeweiligen Aufrufs an den SAPInput-Knoten in einer der drei Nachrichtenflussinstanzen.
  3. Jede Nachrichtenflussinstanz sendet ihre Nachricht an die Zielanwendung.
  4. Die Zielanwendung verarbeitet die Nachrichten und sendet Ihre Antworten an die Nachrichtenflussinstanzen.
  5. Der SAPReply-Knoten in der jeweiligen Nachrichtenflussinstanz sendet die Antwortnachricht an das Empfangsprogramm, welches den ursprünglichen Aufruf empfangen hat.
  6. Jedes Empfangsprogramm gibt die Antwortnachricht an das jeweilige SAP-Programm zurück.
Der SAPReply-Knoten kann sich in demselben Nachrichtenfluss wie der SAPInput-Knoten befinden, wie im vorherigen Diagramm dargestellt. Im folgenden Szenario befindet sich der SAPReply-Knoten jedoch in einem anderen Nachrichtenfluss als der SAPInput-Knoten. Der SAPReply-Knoten muss in derselben Ausführungsgruppe implementiert sein wie der SAPInput-Knoten.
  1. SAP gibt drei Aufrufe aus, die jeweils von einem anderen Empfangsprogramm empfangen werden.
  2. Jedes Empfangsprogramm sendet die Eingangsparameter des jeweiligen Aufrufs an einen Nachrichtenfluss, der einen SAPInput-Knoten enthält.
  3. Der Nachrichtenfluss reiht die Nachricht in eine Warteschlange für die Zielanwendung ein.
  4. Die Zielanwendung empfängt die Nachrichten aus der Warteschlange und verarbeitet sie.
  5. Die Zielanwendung reiht die Nachrichten in eine Warteschlange ein.
  6. Ein zweiter Nachrichtenfluss, der einen SAPReply-Knoten enthält, ruft die Nachrichten aus der Warteschlange ab und verarbeitet sie.
  7. Der SAPReply-Knoten sendet die Antwortnachrichten an die entsprechenden Empfangsprogramme.
  8. Jedes Empfangsprogramm gibt eine Antwortnachricht an das jeweilige SAP-Programm zurück.
In diesem Szenario hat der Nachrichtenfluss eine geringe Latenzzeit verglichen mit der Zeit, die das gesamte Szenario erfordert. Daher können Sie die Ressourcen begrenzen, die vom Nachrichtenfluss, der den SAPInput-Knoten enthält, verwendet werden, indem Sie weniger zusätzliche Instanzen dieses Nachrichtenflusses konfigurieren. Wie in dem Beispiel dargestellt kann eine Nachrichtenflussinstanz viele Empfangsprogramme mit Daten versorgen, da die Importparameter vom Nachrichtenfluss schnell zur Verarbeitung weitergegeben werden.
Auch die folgenden Szenarios sind möglich.
  • Ein einzelner Nachrichtenfluss enthält einen SAPReply-Knoten, dient jedoch zum Senden von Antworten an mehrere SAPInput-Knoten. Nachdem die Nachricht an den SAPReply-Knoten weitergegeben wurde, sendet das Empfangsprogramm die Antwort zurück an SAP und ist deshalb bereit, einen weiteren Aufruf von SAP zu empfangen. Die aktuelle Instanz des Nachrichtenflusses ist jedoch noch mit der Verarbeitung der Knoten ausgelastet, die dem SAPReply-Knoten nachgeschaltet sind. In diesem Fall sollte die Anzahl der Instanzen des Nachrichtenflusses, der den SAPReply-Knoten enthält, erhöht werden.
  • Nach der Weitergabe an den SAPReply-Knoten führen andere Knoten im Nachrichtenfluss zusätzliche Verarbeitungsschritte aus. In diesem Fall sollte die Anzahl der Instanzen dieses Nachrichtenflusses, der den SAPReply-Knoten enthält, erhöht werden, auch wenn es derselbe Nachrichtenfluss ist, der den SAPInput-Knoten enthält.

    Dieses Szenario kann unerwünschte Auswirkungen auf die Integrität Ihrer Daten haben. Falls es nach dem SAPReply-Knoten zu einer Ausnahme kommt, wird für vom Nachrichtenfluss aktualisierte Ressourcen (z. B. Datenbanktabellen oder WebSphere MQ-Warteschlangen) möglicherweise eine Rollback-Operation durchgeführt. Für die Antwort, die bereits zurück an SAP gesendet wurde, kann jedoch keine ROLLBACK-Operation mehr ausgeführt werden. Wenn dieses Verhalten nicht erwünscht ist, können Sie die Datenintegrität dadurch verbessern, dass Sie sicherstellen, dass der SAPReply-Knoten die letzte Position im Nachrichtenfluss einnimmt.

Weitere Informationen zur Optimierung des SAP-Adapters finden Sie im Abschnitt Skalierbarkeit und Leistung von SAP-Adaptern optimieren.

Bemerkungen | Marken | Downloads | Bibliothek | Support | Feedback

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Letzte Aktualisierung:
        
        Letzte Aktualisierung: 2015-02-28 16:22:27


KonzeptthemaKonzeptthema | Version 8.0.0.5 | bc22040_