HintergrundSAP NetWeaver Application Server mit ABAP und Java Dieses Dokument in der Navigationsstruktur finden

 

Sie können den SAP NetWeaver AS auf verschiedene Arten installieren. Die Installationsoptionen finden Sie unter Architektur des SAP NetWeaver AS.

Im Folgenden wird die integrierte Version mit ABAP und Java beschrieben.

ABAP und Java Minimal-Installation

Die Architektur eines solchen Systems (mit einer Instanz) sieht dann aus wie folgt.

Die Abbildung wird im Begleittext erläutert.

Dieses SAP-System bietet folgende Funktionen:

  • Betrieb über SAP GUI

    Der Benutzer meldet sich beim Dispatcher an, die Workprozesse führen seine Eingaben aus.

  • Bearbeitung von Web-Anfragen

    Web-Requests werden von einem Internet Communication Manager (ICM) entgegengenommen. Diese HTTP(S)-Requests können für das Internet Communication Framework (ICF) bestimmt sein, also im ABAP-Workprozess bearbeitet werden (z.B. BSP-Applikationen) oder J2EE-Anfragen, die für die J2EE Engine bestimmt sind.

    Wohin der ICM die Anfrage weitergibt, kann er anhand der URL entscheiden (s.u.).

Installation mit mehreren SAP NW AS-Instanzen

Die folgende Grafik zeigt ein SAP-System mit 3 Instanzen.

Die Abbildung wird im Begleittext erläutert.

Da das System ABAP und Java anbieten soll, muss jede Instanz einen Internet Communication Manager (ICM) enthalten, der Web-Requests annimmt.

Jede dieser integrierten Instanzen des SAP NW AS enthält den (ABAP)Dispatcher und seine Workprozesse, die ABAP-Programme abarbeiten können, sowie den Java-Dispatcher mit seinen Server-Prozessen, auf die er die eintreffenden J2EE-Anfragen verteilt.

Eine der Instanzen muss als (ABAP-)Zentralinstanz installiert sein, d.h. den Enqueue-Service anbieten. Alternativ kann das System ohne Zentralinstanz, dafür mit dem Standalone-Enqueue-Server, eingerichtet werden.

Natürlich können Sie sich an einem solchen SAP-System nicht nur über den Web-Client, sondern auch über das SAP GUI anmelden. Sind hierbei Logongruppen eingerichtet, bestimmt der Message-Server den Applikationsserver, mit dem sich das SAP GUI verbindet. Der Message-Server dient in der ABAP-Welt allgemein zur Übermittlung von Anfragen zwischen den Applikationsservern.

Der Java-Cluster benötigt eine gesonderte Instanz, die Central Services, zur Verwaltung von Sperren und Übermittlung von Nachrichten und Daten.

Schließlich gibt es für die Anwendungen und Daten für ABAP und Java jeweils eine Datenbank.

Integration

Für den Betrieb der J2EE Engine ist es erforderlich, dass im HTTP Service-Baum (Transaktion SICF) die folgenden Services aktiviert sind.

  • /sap/public/icman: Diesen Service verwendet der ICM, um Requests an die J2EE Engine weiterzuleiten.

  • /sap/public/icf_info liefert dem SAP Web Dispatcher Informationen über Logongruppen, Serverlast, etc.

Diese Services müssen also aktiviert sein, damit der SAP Web Dispatcher und der ICM den Request korrekt weiterleiten können.

Falls diese Services nicht aktiv sind, müssen Sie sie in der Transaktion SICF aktivieren wie im Abschnitt Aktivieren und Deaktivieren eines ICF-Services beschrieben.

Funktionsumfang

Verteilung der HTTP(S)-Requests durch den SAP Web Dispatcher

Der SAP Web Dispatcher ist der zentrale Einstiegspunkt aus dem Internet in das SAP-System. Es muss für jeden eingehenden Request entscheiden, zu welchem Applikationsserver er ihn weiterleitet. Das Verfahren dazu ist im Abschnitt Serverauswahl und Lastausgleich durch den SAP Web Dispatcher beschrieben.

Empfehlung Empfehlung

Sie können zur Verteilung der HTTP(S)-Requests auch einen anderen (Software- oder Hardware-) Loadbalancer einsetzen, SAP empfiehlt jedoch den SAP Web Dispatcher, da dieser auf die SAP-Umgebung zugeschnitten ist und ohne viel Konfigurationsaufwand die Requests optimal auf das System verteilt.

Ende der Empfehlung.
Bearbeitung von HTTP(S)-Requests durch den ICM

Der ICM muss für jeden eingehenden HTTP-Request entscheiden, ob er diesen der ABAP Engine (also dem ICF) oder der J2EE Engine zur Bearbeitung weiterleiten soll.

Dies geschieht anhand des URL-Präfixes, der ICM verwendet das gleiche Verfahren wie der SAP Web Dispatcher.

Kommunikation zwischen ICM und Java-Dispatcher

Für die Kommunikation zwischen ICM und Java-Dispatcher wird ein eigenes Protokoll verwendet. Dies ist im Abschnitt Kommunikation von ICM und J2EE Engine näher beschrieben.

Caching im ICM

Sie können auch mit dem J2EE-Server den Internet Server-Cache verwenden, um HTTP-Responses (z.B. HTML-Seiten oder Bilder) einzulagern. Dann kann beim nächsten Mal die Anfrage direkt aus dem Cache befriedigt werden.