Show TOC

SAP Web Dispatcher für mehrere SystemeLocate this document in the navigation structure

Verwendung

Sie können den SAP Web Dispatcher auch vor mehrere SAP- und Nicht-SAP-Webserver setzen.

Der Web Dispatcher dient dann als Einstiegspunkt für diese Systeme und nimmt folgende Aufgaben wahr:

Sie müssen dadurch nicht einen Web Dispatcher pro System aufsetzen, konfigurieren und warten, sondern nur einen gemeinsamen Web Dispatcher für alle Systeme. Dieser muss dann entsprechend für die angeschlossenen Systeme konfiguriert werden.

Funktionsumfang

Das Auseinandersteuern der Requests kann über verschiedene Mechanismen oder eine Kombination daraus erfolgen.

  • Zugangspunkt (Servername/Port) des Web Dispatchers

    Sie können im Web Dispatcher für jedes angeschlossene System einen Zugangspunkt (Kombination aus Hostname und Port) konfigurieren und die Anfragen je nach Zugangspunkt in das entsprechende System weiterleiten.

    Achtung

    Falls Sie gleiche Servernamen verwenden wollen, beachten Sie die Einschränkungen unten.

  • URL-Präfix

    Sie können URL-Präfixe definieren, die die Beziehung zu dem gewünschten System darstellen. Anfragen, die mit dem URL-Präfix beginnen, werden an die Applikationsserver des entsprechenden Systems weitergeleitet.

  • Modifizierter Request

    Sie können den Modification Handler verwenden und eine Regel im Web Dispatcher definieren, die das System spezifiziert, an den der Request gehen soll. Hierzu setzen Sie das Pseudo-Headerfeld ~webdisp_target_sid.

Systemauswahl durch den Web Dispatcher

Für jeden eingehenden Request prüft der Web Dispatcher anhand der konfigurierten Kriterien und der Einstellung von wdisp/system_ <xx> , welches System für den Request in Frage kommt. Passen die Kriterien für mehr als ein System, wird das Verhalten durch Parameter wdisp/system_conflict_resolution bestimmt:

  • wdisp/system_conflict_resolution = 0 (Standardeinstellung).

    Der Web Dispatcher erkennt die Mehrdeutigkeit. Sofern sie zum Startzeitpunkt erkannt wird, meldet der Web Dispatcher einen Fehler und startet nicht. Sofern sie zu einem späteren Zeitpunkt erkannt wird, meldet der Web Dispatcher einen Fehler.

  • wdisp/system_conflict_resolution = 1

    Der Web Dispatcher führt die Systemauswahl in der Reihenfolge der wdisp/system_ <xx> Parameter durch (anhand des Parameterindexes <xx> ). Sobald das erste System gefunden wird, das auf den eingehenden Request passt, wird der Request an dieses System geschickt. Dies entspricht einer „First match“-Semantik.

  • wdisp/system_conflict_resolution = 2

    Der Web Dispatcher führt den Lastausgleich für alle Applikationsserver der möglichen Systeme durch.

    Achtung
    • Beachten Sie, dass es dann nur stateless Requests geben darf. Der Web Dispatcher kann keine Stickiness über Systemgrenzen gewährleisten!

    • Wenn Sie explizit zulassen wollen, dass die Systemauswahl für Requests nicht eindeutig ist, müssen sie entweder die Option SRCURL=* oder SRCSRV=*:* setzen. Wenn für ein System keine der Optionen SRCURL und SRCSRV angegeben ist, bedeutet dies, dass das System nur über entsprechende Regeln in der Aktionsdatei ausgewählt werden kann.

      Weitere Informationen: Ein Web Dispatcher, zwei Systeme: Konfigurationsbeispiele

Administration über die Webadmin-Oberfläche

Wenn Sie den Web Dispatcher für mehrere System eingerichtet haben, können Sie in der Web-Administrationsoberfläche für jedes angeschlossene System die Applikationsserver, Logon-Gruppen und das URL-Mapping sehen. Bei zwei angeschlossenen SAP-Systemen BCO und BIN sowie einem externen System EXT sieht das dann so aus:

Bereichsmenü für die angeschlossenen Systeme

Weitere Informationen: Verwendung der Web-Administrations-Oberfläche

Einschränkungen

Unter bestimmten Bedingungen kann es Konflikte bei den Session-Cookies geben. Diese dürfen sich nicht überschreiben, damit Stickiness funktioniert.

Session-Cookies können sich überschreiben, falls ein Benutzer über einen Browser auf mehrere Systeme desselben Typs (ABAP, Java) zugreift, die über denselben Hostnamen angesprochen werden.

Beispiel

Test- und Integrationssystem hinter einem Web Dispatcher sollten aus Sicht des Browsers über verschiedene Hostnamen angesteuert werden.

Beispiel

Die folgende Abbildung zeigt eine Beispielkonfiguration.

Abbildung 1: Konfiguration des Web Dispatchers für mehrere Systeme

Der Web-Dispatcher-Rechner hat zwei IP-Adressen (abgebildet auf webdisp1 und webdisp2). Sie konfigurieren einen Zugangsport und steuern die Systeme über die IP-Adressen auseinander.

icm/server_port_0 = PROT=HTTP, PORT=8888

Da die HOST-Option weggelassen ist, gilt der Port auf allen IP-Adressen.

Hinweis
  • Technisch sind das dann verschiedene Ports, da für die Netzwerkverbindung die Kombination IP-Adresse/Portnummer relevant ist. Wenn Sie wirklich nur einen physikalischen Port definieren wollen, müssen Sie die Steuerung über die URL-Präfixe oder den Modification Handler verwenden (s.u.).

  • Durch die verschiedenen Hostnamen gilt die obige Einschränkung nicht, Sie können beliebige Systeme ansteuern.

Sie können dann die Systemzuordnung festlegen wie folgt:

wdisp/system_0 = SID=ERP, MSHOST=ms_erp, MSPORT=8082, SRCSRV=webdisp1:8888

wdisp/system_1 = SID=CE1, MSHOST=ms_ce1, MSPORT=8127, SRCSRV=webdisp2:8888

Damit haben Sie die Systeme auseinandergesteuert wie in der Grafik dargestellt:

  • Alle HTTP-Requests an webdisp1:8888 werden an das System ERP weitergeleitet

  • Alle HTTP-Requests an webdisp2:8888 werden an das System CE1 weitergeleitet