SAP NetWeaver Application Server mit ABAP und Java 
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.
Das kleinstmögliche SAP-System mit ABAP und Java besteht aus einer Applikationsserver-Instanz, die den Application Server ABAP (AS ABAP) und den Application Server Java (AS Java) enthält. eine solche Instanz wird als „Dual-Stack-Instanz“ bezeichnet.
Die Architektur eines solchen Systems sieht dann aus wie folgt.

SAP-System mit einer Dual-Stack-Instanz
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. Web Dynpro ABAP Anwendungen) oder Java Anfragen, die für den AS Java bestimmt sind.
Wohin der ICM die Anfrage weitergibt, kann er anhand der URL entscheiden (s.u.).
Weitere Informationen:
Die folgende Grafik zeigt ein SAP-System mit 3 NetWeaver Application Server Instanzen.

Verteiltes Dual-Stack System
Jede dieser integrierten Instanzen des SAP NW AS enthält den (ABAP‑)Dispatcher und seine Workprozesse, die ABAP-Programme abarbeiten können, sowie den AS Java mit seinen Server-Prozessen. Der ICM nimmt alle Anfragen entgegen und leitet ABAP-Requests an den ABAP-Dispatcher und Java-Requests an einen Java-Server-Prozess weiter.
In größeren Systemen empfiehlt sich auch auf der ABAP Seite die Central Services Instanz zu konfigurieren (ASCS-Instanz), die auch hochverfügbar gemacht werden kann. Alternativ kann auch eine der Instanzen als klassische Zentralinstanz installiert sein, d.h. den Enqueue-Service anbieten.
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 ein Datenbank-Schema. Zwei getrennte Datenbanken sind nicht erforderlich.
Weitere Informationen:
Für den Betrieb des AS ABAP+Java ist es erforderlich, dass im HTTP Service-Baum (Transaktion SICF) die folgenden Services aktiviert sind.
/sap/public/icman: Diesen Service verwendet der ICM, um zwischen ABAP- und Java-Requests unterscheiden zu können.
/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.
Weitere Informationen:
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.
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.
Weitere Informationen: Serverauswahl und Lastausgleich durch den SAP Web Dispatcher
Der ICM muss für jeden eingehenden HTTP-Request entscheiden, ob er diesen dem AS ABAP oder dem AS Java zur Bearbeitung weiterleiten soll.
Dies geschieht anhand des URL-Präfixes, der ICM verwendet das gleiche Verfahren wie der SAP Web Dispatcher.
Sie können sowohl für ABAP als auch für Java den Internet Server-Cache (auch ICM 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 bedient werden.
Weitere Informationen: ICM Server-Cache