Melden Sie sich hier an, um auf Kommentare und die Whitepaper-Datenbank zugreifen zu können.

Kein Log-In? Dann jetzt kostenlos registrieren.

Falls Sie Ihr Passwort vergessen haben, können Sie es hier per E-Mail anfordern.

Der Zugang zur Reseller Only!-Community ist registrierten Fachhändlern, Systemhäusern und Dienstleistern vorbehalten.

Registrieren Sie sich hier, um Zugang zu diesem Bereich zu beantragen. Die Freigabe Ihres Zugangs erfolgt nach Prüfung Ihrer Anmeldung durch die Redaktion.

Enterprise Application Integration


10.11.2000 - 

Application Server als Brücke zwischen Old und New Economy

E-Commerce-Anwendungen müssen rasch ans Netz gehen. Doch für die Wahl eines Application Servers, der notwendigen Basistechnik, sollten sich Unternehmen Zeit lassen. Denn ein Wechsel dieser Plattform ist laut Heiko Schinzer* ein ähnlich schmerzhaftes Unterfangen wie der Umstieg auf einen neuen ERP-Anbieter.

Der Aufbau einer erfolgreichen Electronic-Commerce-Lösung erfordert nicht nur die Implementierung eines Online-Shops mit Warenkorb und integrierter Bezahlabwicklung. Im Wesentlichen sind es die zusätzlichen Informations- und Serviceleistungen, die einen Interessenten immer wieder auf die Web-Seite ziehen und damit auch zum Kauf verführen. Diese Mehrwerte individuell und personalisierbar über das statuslose HTTP-Protokoll zu erbringen ist aber nicht so einfach möglich und erfordert eine sehr umfassende Integration der Web-Anwendung mit den Back-Office-Programmen eines Unternehmens.

Die hierzu erforderlichen Mechanismen zur Kopplung der Web-Anwendungen und den dahinterliegenden konventionellen C-, C++- oder auch Java-Programmen im Unternehmen stellen die Web-Server von Apache, Microsoft oder Netscape nicht mehr bereit, sondern werden durch Application Server erbracht. Die zunehmende Komplexität der bereits implementierten oder in Entwicklung befindlichen Internet-Lösungen führt dabei zu einem raschen Wachstum des Marktes für Application Server. So prognostiziert die IDC einen Umsatzanstieg von rund 450 Millionen Dollar im Jahr 1998 auf knapp 2,5 Milliarden Dollar im Jahre 2003.

Wesentliches Ziel der Application Server ist es, dass die Entwickler der Lösungen von der bisher notwendigen Implementierung dieser allgemeinen infrastrukturellen Softwarekomponenten entbunden werden und damit die Entwicklungszeiten verkürzt werden können. Die vorherrschende Technologieplattform im Bereich der Application Server ist die Java 2 Enterprise Edition (J2EE) von Sun. J2EE bietet eine Klassenbibliothek, die den Anwendungsentwicklern Programmier-Schnittstellen zur Nutzung von Enterprise Java Beans (EJB), Java Server Pages und Servlets zur Verfügung stellt. Die Application Server dienen dabei als Laufzeitumgebung (Container) für diese Komponenten. Gängige Produkte unterstützen darüber hinaus auch Corba mit IIOP sowie XML.

Mit Hilfe der Application Server soll es in komplexen E-Commerce-Anwendungen möglich sein, die Konsistenz eines digitalen Geschäftsprozesses zu gewährleisten. Eine wesentliche Leistung liegt dabei in der Steuerung und Sicherung von Transaktionen, die bei den gängigen Lösungen durch die Integration der Transaktionsmonitore von CICS, Tuxedo oder der Object Management Group erreicht werden. Weitere Funktionen sind das Caching, das sich entweder auf statische Seiten oder auch auf personalisierbare Daten beziehen kann sowie Naming Services wie LDAP (Lightweight Directory Access Protocol).

Die skizzierten Funktionen eines Application Servers finden sich bei fast allen führenden Anbietern wieder. Allerdings gibt es keine feststehenden Leistungsbeschreibungen, so dass die Fähigkeiten der knapp 50 Produkte auf dem Markt sehr stark differieren. Neben den etablierten Anbietern, allen voran Bea, IBM, Inprise und Sun, sind auch in diesem Segment viele Startup-Unternehmen wie Persistence, Prosyst (an SAP verkauft) oder auch Silverstream zu finden, die im stark wachsenden Markt Fuß fassen wollen.

Die Zahl der am Markt verfügbaren Application Server hat sich in den letzten zwölf Monaten sehr stark erhöht. Dies liegt vor allem daran, dass mit der zunehmenden Entwicklung von "echten", das heißt umfassenden und integrierten E-Commerce-Applikationen die stark auf einzelne Seiten ausgerichteten WWW-Anwendungen immer stärker durch Server-zentrierte Lösungen ergänzt werden.

Eine Klasse von Produkten stellt eine Programmierumgebung zur Verfügung, mit der sich umfassende Anwendungen erstellen und compilieren lassen, während die andere Kategorie nach wie vor an der Seiten-orientierten Web-Entwicklung festhält. Zu dieser Gruppe gehört auch "Cold Fusion" von Allaire. Neben dem weit verbreiteten HTML-Editor "Home Site" als Komponente zur visuellen Entwicklung von Web-Applikationen hat das Paket mit "Cold Fusion Server" auch einen Application Server im Repertoire. Die wesentliche Aufgabe des Cold Fusion Server ist es, beim Aufruf einer in der eigenen Skriptsprache CFML entwickelten Seite die Interaktion mit dem angesprochenen Backend-System zu ermöglichen und dann als Ergebnis eine HTML-Seite an den Client zu übermitteln.

Je nach Herkunft unterschiedliche StärkenNeben Herstellern wie Allaire und Inprise, die primär aus der Web-Anwendungsentwicklung stammen, sind auch Datenbankanbieter wie Sybase und Oracle führend in diesem Segment. So bietet Sybase mit dem "Enterprise Application Server" (EAServer) ein Produkt an, das durch die Kombination mit dem "Sybase Enterprise Event and Message Broker" eine hohe Transaktionssicherheit gewährleistet und daher auch in vielen Finanzapplikationen eingesetzt wird. Ein wesentlicher Schwerpunkt liegt dabei auch auf der Integration verschiedener Sicherheitsmechanismen wie SSL, der asynchronen Verschlüsselung mit RSA und digitalen Zertifikaten (X.509).

IBM hat in das Zentrum seiner E-Business-Lösungen den Application Server "Websphere" gestellt. Dieser basiert auf dem "Application Framework" und gliedert sich in die Ebenen "Websphere Foundations", "Websphere Foundation Extensions" sowie "Websphere Application Accelerator". Zur Websphere Foundation gehört neben dem Application Server auch die Messaging Software "MQ Series". Websphere zeigt dabei zwei wesentliche Neuerungen auf.

Zum einen ist dies die stärkere Kopplung der Application Server mit den Werkzeugen für Enterprise Application Integration. Zweitens handelt es sich um die Weiterentwicklung der eher technisch ausgerichteten Lösungen, um direkt für Electronic-Commerce-Anwendungen einsetzbare Module, wie "Personalization", "Portal Server" oder "Everyplace Suite".

Obwohl oder gerade weil der Markt für Application Server bereits eine stattliche Zahl von Anbietern erreicht hat, ist es für Unternehmen schwierig, einen geeigneten Hersteller zu eruieren. Oftmals spielen dabei bereits vorhandene Erfahrungen mit den Anbietern eine vernünftige Entscheidungsgrundlage. Dies spricht sicherlich auch für die etablierten Anbieter wie IBM, Sybase oder Oracle. Die skizzierten Veränderungen - verstärkte Kopplung mit Werkzeugen zur Applikationsintegration und Integration weiterer Anwendungskomponenten zeigen die hohe Innovationsgeschwindigkeit in diesem Segment und damit die Chance für Newcomer auf. Unternehmen sollten bei der Auswahl besonders auf die Herkunft und den Fokus der Anbieter achten. Während eine große Zahl der Produkte sehr stark auf die Unterstützung der eigenen Produktsuiten ausgerichtet ist - und bei Übereinstimmung mit der Situation im Unternehmen hier durchaus sehr leistungsfähige Funktionen bieten (etwa Cold Fusion) - positionieren sich IBM oder Oracle als Anbieter offener Plattformen. Neben der passenden Plattformstrategie spielen bei der Evaluierung vor allem der Abgleich der eigenen Sicherheits- und Perfomance-Anforderungen mit dem Umfang der angebotenen Produkt-Features eine wesentliche Rolle. Analog zu den Anforderungen der Unternehmen differieren hier die Fähigkeiten sehr stark - so spielen zum Beispiel Oracle und Sybase ihre Erfahrungen bei der Abwicklung sicherer Transaktionen aus.

Leider verschlingt die Entscheidung für einen Application Server einen großen Teil des E-Commerce-Budgets. Applikations-Server auswechseln ist dabei ein ähnlich schmerzhaftes Unterfangen wie der Wechsel eines ERP-Anbieters. Ein Ansporn für viele Anbieter sich in diesem Markt frühzeitig eine starke Position zu verschaffen - ein Ansporn für die Unternehmen, sich die Wahl nicht zu leicht zu machen.*Dr. Heiko Schinzer ist wissenschaftlicher Assistent und Projektmanager E-Commerce an der Universität Würzburg am Lehrstuhl für BWL und Wirtschaftinformatik.

Web- versus Applikations-ServerDie ursprüngliche Idee des World Wide Web war es, durch Hyperlinks verknüpfte Dokumente über das Internet zu übertragen und in einem Browser darzustellen. Keineswegs stand die Transaktionsverarbeitung oder der Abruf dynamischer Informationen im Blickpunkt der Entwicklung. Eine erste Lösung hierfür kam mit den CGI-Skripten (Common Gateway Interface) auf, die es einem Web-Server erlauben, auf Anfrage eines Client (Browser) beliebige Programme auszuführen und das Ergebnis in einen Datenstrom (HTML-Seite) an den Client zu übermitteln. Mit der Option, über CGI auch Datenbanken abzufragen, bildet diese Technologie auch heute noch die weit verbreitetste Form der dynamischen Web-Anwendungen.

Darüber hinaus haben so genannte Server Side Includes (SSI) die klassische Funktionsweise von Web-Servern ausgeweitet. Diese Lösungen wie Active Server Pages (ASP) oder PHP bieten die Möglichkeit, Programmcode in HTML-Dokumente einzubinden. Bevor der Web-Server ein solches Dokument ausliefert, führt er den eingebetteten Programmcode aus. Solche Dokumente werden auch als Templates bezeichnet, deren Inhalt durch die Ausführung des enthaltenen Codes dynamisch ergänzt wird. Bei den mit CGI und SSI verfolgten Ansätzen liegt die komplette Programmlogik auf Seiten des Web-Servers und der Client (Web-Browser) wird auf seine Funktion als Anzeigemedium reduziert.

Dagegen stehen mit Java Script, Jscript und VBScript auch Möglichkeiten zur Verfügung, Programme auf Seiten des Client (Browser) ablaufen zu lassen. Der in das HTML-Dokument integrierte Programmcode wird vom Server unverändert zum Client übertragen und dort ausgeführt. HTML-Dokumente können auf Seiten des Client skriptgesteuert manipuliert werden, da aus dem Programmcode heraus auf die einzelnen Elemente des Dokuments zugegriffen werden kann. Die in das Dokument eingebetteten Skripte reagieren durch vom Benutzer ausgelöste Ereignisse (etwa Mauklicks). Allerdings bestehen dabei erhebliche Inkompatibilitäten zwischen den Browsern von Netscape und Microsoft, so dass in der Regel sogar für jeden Browser eigene Versionen des Skripts entwickelt werden müssen.

Mit der von Sun Microsystems entwickelten Programmiersprache Java existiert eine weitere Möglichkeit zur Entwicklung intelligenter E-Commerce-Anwendungen. Der Hauptanwendungsbereich von Java im Wold Wide Web liegt im Einsatz so genannter Java Applets. Dies sind eigenständige Anwendungsprogramme, die von einem Web-Server an einen Client übertragen und von der darin integrierten Virtual Machine (VM) ausgeführt werden. Der Web-Browser dient als universelle Plattform für beliebige Anwendungsprogramme. Da die komplette Anwendung vollständig auf Seiten des Clients läuft, spricht man in diesem Zusammenhang von so genannten Fat-Client-Lösungen.

Eine Alternative zu herkömmlichen CGI-Programmen sind die Java Servlets. Bei diesen handelt es sich um Server-seitig ausgeführte Java Programme, mit allen Vorteilen, wie etwa Plattformunabhängigkeit, die die Sprache Java bietet. Daneben bieten Java Servlets eine Reihe weiterer Vorteile wie Persistenz der Server-Prozesse, Multi-Threading und Session Management. Eine weitere alternative Einsatzmöglichkeit von Java bieten Java Server Pages (JSP). Sie sind eine auf Java basierende Form von Server Side Includes.

Die bisher skizzierten Möglichkeiten bilden jedoch nur ein lose Sammlung von Technologien, die nur sehr schwer miteinander zu verbinden sind. Und an diesem Manko setzen die Application Server an. Damit sollen die Voraussetzungen für unternehmenskritische IT-Anwendungen wie Interoperabilität, Skalierbarkeit, Anbindung an ERP- und Legacy-Systeme, N-Tier-Architekturen, Sicherheitskontrollen sowie die Unterstützung üblicher Client-Server-Anforderungen wie 2-Phase-Commit oder langer Transaktionen erreicht werden.

Abb: Ziel von Applikations-Servern ist es, Entwickler von der bisher notwendigen Implementierung allgemeiner Infrastrukturkomponenten zu befreien. Quelle: Schinzer