Newsletter

Hier können Sie sich für unseren News-letter und unsere eJournals anmelden.

 

anmelden

 
Home arrow it fokus arrow Open-Source Applikationsserver: Apache Geronimo 2.0

it fokus

it fokus richtet sich an die technischen Entscheider in mittelständischen und großen Unternehmen. Leser sind in erster Linie Leiter und Mitarbeiter der Fachabteilungen Anwendungsentwicklung, Methoden & Verfahren, Qualitätssicherung und Netzwerktechnik. Dementsprechend technisch fundiert berichtet it fokus.

 

Seit Anfang 2008 ist it fokus unter der Rubrik „it tech-nologie“ im it management integriert. Die it fokus-Ar-tikel können Sie nach wie vor an dieser Stelle lesen.

Open-Source Applikationsserver: Apache Geronimo 2.0 PDF  | Drucken |  E-Mail
06. November 2007

Applikationsserver zählen heute zu den selbstverständlichen Bestandteilen einer modernen IT-Infrastruktur, die wichtige Dienste zur Verfügung stellen.

 

ImageDabei spielt die Unterstützung von Standards und die Verwendung von Lösungen aus dem Open-Source-Bereich eine wichtige Rolle.
Mit Apache Geronimo 2.0 steht, nach Sun Glassfish, der zweite Java EE 5.0 konforme Open-Source-Applikationsserver zur Ver-fügung. Zeit für eine Bestandsaufnahme.
Ein gutes Omen ist, dass Geronimo unter dem Dach von Apache entwickelt wird. Durch die sehr liberale Apache Lizenz gibt es beim Einsatz des Geronimo in eigenen Produk-ten kaum Einschränkungen. Das hat schon Tomcat zu seiner großen Verbreitung im Java-Webserver-Markt verholfen. Eine weitere finanzielle und professionelle Hilfe erhält der Applikationsserver durch IBM, die darauf aufbauend die eigene WebSpere Community Edition (WAS CE) anbieten.

Trotz seines jungen Alters von drei Jahren macht Geronimo bei der Dokumenta-tion, anders als bei vielen anderen Open-Source-Produkten, einen guten und professionellen Eindruck. Dabei zeigt sich auch die Handschrift von IBM, die für ihre Produktvariante einem offiziellen Support, mehrsprachige Handbücher, Artikel und Tutorials anbieten. Für den WAS Ce und SUSE Linux Enterprise Server bietet außerdem Novell einen Support und Wartungsvertrag an. Damit positioniert sich Geronimo gegen seinen direkten Konkurrenten RedHat JBoss.

Als Neuling legt Geronimo seinen Fokus auf das Thema Migration. Der Umstieg ist für Tomcat und JBoss ausführlich beschrieben und wird außerdem durch Wizard unterstützt. Auch der Wechsel von Geronimo zu IBM WebSphere wird durch kommerzielle IBM Werkzeuge unterstützt (Scale-up-Ansatz).
Wahlfreiheit bietet Geronimo nicht nur in der alternativen Unterstützung der Java-Versionen von SUN (auch als 64-bit-Version unter Intel und AMD) und IBM, sondern auch bei den Webservern. Als Webserver kann neben dem Tomcat alternativ Jetty verwendet werden. DA Apache zwei WebServices-Implemen-tierungen (JAX-WS 2.0) anbietet, werden von Geronimo Axis2 und CXF unterstützt. Der in Java EE 5 enthaltene Web-Service-Stack ersetzt den alten XML-basierten RPC-WebService (JAX-RPC 1.1) durch folgende neuen Standards (Java Architecture for XML Binding (JAXB) 2.0, Simple Object Access Protocol (SOAP) 1.2, Web Services Description Language (WSDL) 2.0, Web Services Interoperability (WS-I) Basic Profile 1.1,  STreaming Api for Xml processing (StAX 1.0)). Für die Entwicklung von Webanwendungen werden sowohl die neuen Standards für JSP 2.1 und JSF 1.2 als auch der neue Persistenzstandard JPA für EJB 3.0-Komponenten unterstützt. Damit können EJB als Plain Old Java Objects (POJO) einfacher erstellt und deployt werden, da diese mit Annotationen ohne zusätzliche XML-Deploymentdeskriptoren erstellt werden können. Die Unter-stützung der AJAX-Bibliothek DOJO zeigt sich auch in der erweiterten Web-Administrationsoberfläche, die einige neue Viewer (für JMX, JNDI, LDAP, den Klassenlader und die Bibliotheksabhängigkeiten) bereitstellt. Über die Oberfläche lässt sich sehr einfach der Speicherverbrauch, der Thread Pool, die Datenbank-verbindungen und die Anzahl der offenen Sitzungen kontrollieren.

Durch einen verbesserten Logger werden die Diagnosemöglichkeiten zur Fehlersuche erweitert und es besteht die Möglichkeit der Unterstützung mehrerer Repositories- und Server-Instanzen. Dadurch ist eine rein ressourcenschonende, mandantenfähige und wartungsfreundliche Installation möglich, wie sie von Hostern benötigt wird, um mehrere virtuelle Server auf einer physikalischen Installation zu betreiben. Diese Funktion ist auch zum einfachen Aufbau und der Pflege der Entwicklungs-, Test- und Produktionsumgebung geeignet, da sie es ermöglicht virtuelle Hosts für Webserver auf Applikationsservern zu verwenden.

Darüber hinaus integriert Geronimo weitere populäre Open Source-Bibliotheken erstmals zu einer qualitätsgesicherten Gesamtlösung mit der sich eigene SOA-Anwendungen schnell realisieren lassen. Der EJB 3-Support wird durch die Apache-Projekte OpenEJB und OpenJPA erledigt. Da Geronimo auf bewährte Open Source-Server-Bibliotheken aufsetzt und zu einer Gesamtlösung integriert, hat man damit sehr gute Voraussetzungen um erfolgreiche Web- und Webservice-Projekte zu realisieren.
Die Diagnose-Möglichkeiten werden durch erweiterte Logging-Features, einem Classloader-Viewer sowie durch einen JMX-Browser verbessert. Wer nicht auf den vollständigen Jaca EE 5-Stack setzen möchte, kann sich der abgespeckten Implementierung „Little-G“ bedienen. Diese eignet sich in erster Linie für reine Web- und WebServices-Anwendungen und liegt ebenfalls in der Version 2.0.1 vor. Geronimo begeistert vor allem durch den sehr flexiblen Konfigurationsmechanis-mus und das automatisierte Deployment. Dadurch kann er sehr einfach und schnell dynamisch erweitert und angepasst werden. Die Projektplanung wird durch klare Release-Zyklen (zwei Hauptversionen pro Jahr und mindestens 18 Monate Support für die Vorversion) erleichtert.

Mit der Version 2.0 bietet Geronimo leistungsfähige Konzepte wie Clusterung und Caching an, die hohen Last- und Performance-Anforderungen genügen. Mit seinem modularen Konzept lässt sich Geronimo zur Laufzeit erweitern. So kann man mit der minimalen WebServer-Variante (Little-G) starten und diese bei steigenden Anforderungen bis zu einem ausgewachsenen Applikations- oder sogar Portalserver (LifeRay) dynamisch erweitern. So lässt sich Geronimo zu einem Reporting- (JReport) oder LDAP-Server (Apache Directory Server) leicht ausbauen. Somit werden auch die Anforderungen an eine Echtzeit-Service-Unterstützung Rechnung erfüllt. Apache Geronimo ist bestens für den Einsatz von SOA- und WEB 2.0-Anwendungen gerüstet.

Da Geronimo ein vollständig automatisiertes Konfigurieren und Verteilen von Anwendungen unterstützt, lassen sich sehr einfach und schnell identische Entwicklungs-, Test- und Produktionsumgebungen aufbauen. Als weitere Option wird neben dem hot-Deployment, bereits seit Geronimo 1.1, auch ein Offline-Deployment unterstützt. Dieses wird dadurch vereinfacht, dass alle Konfigurations-informationen in einem zentralen Repository abgelegt werden und jede Modul-Version nur einmal installiert und damit verteilt werden muss. Gerade Delta-Aktualisierungen, wie zum Beispiel bei Fehlerkorrekturen, werden dadurch dramatisch beschleunigt. Für jedes Anwendungsmodul gibt es einen Deploy-mentplan, der alle nötigen Informationen zum Verteilen und Konfigurieren der Anwendungen enthält. Die unterstützten Modularten und die dazugehörigen Pläne werden in Bild 4 aufgeführt. Darüber hinaus gibt es noch Pläne für erweiterte Konfigurationseinstellungen, für Sicherheit, Corba, webserverspezifische Einstellungen für Jetty oder Tomcat.

Neben der dafür vorgesehenen XML-Schnittstelle gibt es für die täglichen Administrationsarbeiten eine sehr komfortablen und portalbasierte Weboberfläche. Auf dieser kann man sehen, wie mit den AJAX-Bibliotheken DOJO und DWR ansprechende Weboberflächen unter Geronimo realisiert werden können. Über den in Geronimo integrierten Portlet-Kontainer Pluto können sogar JSR-168 konforme Portlets, wie sie zum Beispiel in der Administrationskonsole genutzt werden, verwendet werden. Damit ist das Tool zwar noch kein vollwertiger Portal-Server, die Entwicklung und das Deployment von Portlets wird dadurch aber erheblich vereinfacht. So ist es kein Wunder, dass selbst IBM WAS CE als Standardtestumgebung für den kommenden WebSphere Portal Server 6.2 verwendet.
Da Geronimo von Haus aus bereits das BUILD-Werkzeug MAVEN einsetzt und sich bei der Beschreibung der Modul-Abhängigkeiten an dessen Konventionen anlehnt, lässt er sich sehr einfach in einen automatisierten BUILD-Prozess einbinden. Als Entwicklungsumgebung bietet sich Eclipse an, da dessen Webtools-Plattform bereits eine Unterstützung für Geronimo integriert hat. In der Entwicklung gibt es jetzt also die Möglichkeit Annotationen und Werkzeuge für Eclipse beziehungs-weise Jax-WS zu verwenden. Wem das Eclipse-PlugIn für die Entwicklung nicht ausreicht, der kann für WAS CE sogar den Rational Application Developer einsetzen. Auch hier bietet IBM eine nahtlose Integration von Geronimo in Ihre Produktpalette an. Eine aktualisierte Dokumentation und Beispiele runden den positiven Eindruck der neuen Geronimo-Version ab. Da der Applikationsserver-Markt zurzeit in Bewegung ist, stellt sich für viele Kunden nicht nur die Frage des Wechsels auf die neue Java EE-5-Version, sondern auch die der Migration der bestehenden Entwicklungs- und Ablaufumgebung. Aus diesem Grund bietet Geronimo gerade hier einige Migrationswerkzeuge und Leitfäden an, die den Umstieg erleichtern sollen.

Ausblick und Fazit

Mit dem neuen Java EE 5.0-Standard werden die Karten im Applikationsserver-Markt neu gemischt. Open Source Java-Anwendungsserver bieten eine echte Alternative zu kommerziellen Produkten. Gerade was die Unterstützung aktueller Standards (JEE 5.0, AJAX, WS) und Technologien betrifft, sind sie diesen sogar oft voraus. Sie stellen somit Startrampen für WEB 2.0 Anwendungen dar, wodurch sich ihre Verbreitung und die Einsatzmöglichkeiten noch ausdehnen werden. Apache Geronimo spielt zwar in einer anderen Liga als die kommerziellen Platzhirsche BEA und IBM, es kann jedoch gegenüber seinen direkten Open Source-Konkurrenten Glassfish und JBoss überzeugen. Hier kann Geronimo mit seinen Alleinstellungsmerkmalen wie dynamische Erweiterbarkeit und Plug-Ins und der vollständigen Administration mit Skripten punkten. Migrationshilfen erleichtern den Umsteige für bestehende Anwendungen. Die Schwächen im Bereich Überwachung des Betriebes lassen sich einfach über die dafür vorgesehene Standard-Java-Management-Extention-Schnittstelle (JMX) beheben. Durch die Kombination von Apache und IBM bietet Geronimo nicht nur konzeptionell maximale Freiheit bei optimaler Unterstützung von Standards. Abgerundet wird das Ganze durch das professionelle Support-Angebot, das vor allem für den produktiven und zuverlässigen Betrieb solch zentraler Infrastrukturen wie Applikationsservern wichtig ist. Somit wird Apache Geronimo in diesem Markt auch in Zukunft fest im Sattel sitzen.

Autor: Frank Pientka
Diese E-Mail-Adresse ist gegen Spam-Bots geschützt, Sie müssen Javascript aktivieren, damit Sie es sehen können

 

Quellen:
[1] Geronimo: http://geronimo.apache.org
[2] WASCE: http://publib.boulder.ibm.com/wasce
[3] IX 10/06: WebSphere Community Edition: kleiner Ableger, Frank Pientka
[4] JM 11/06: Open-Source Java-Anwendungsserver: Eine echte Alternative, Frank Pientka
[5] Apachen Geronimo: Serverhandbuch, Frank Pientka,  DPUNKT-Verlag, 2008
[6] Geronimo PlugIn-Repository: http://geronimo.apache.org/..,
http://download.boulder.ibm.com/..

 
< zurück