Open-Source-Frameworks auf HP NonStop-Servern

Schneller zur Hochverfügbarkeit

10.12.2010 von Klaus Manhart
Für seine NonStop-Hochverfügbarkeitsserver unterstützt Hewlett-Packard (HP) nun auch Open-Source-Frameworks. Mit Hilfe dieser in der Open-Source-Community weit verbreiteten Tools können Kunden und Softwarepartner mission-critical Anwendungen schnell und einfach auf die NonStop-Plattform bringen.

Hochverfügbarkeitsanwendungen haftet das Image an, dass sie schwer zu entwickeln sind. Besonders die weit verbreiteten Cluster-Systeme mit ihren parallelen Applikationen sind für Programmierer eine echte Herausforderung. Von der Lösung der dabei anfallenden Probleme wie Synchronisation, Datenpartitionierung, Lastbalancierung oder Fehlertoleranz hängen Zuverlässigkeit und Korrektheit der parallelen Programme ab.

Der große Entwicklungsaufwand dürfte einer der Hauptgründe sein, weshalb hochkritische Anwendungen meist sehr lange leben und oft über Jahrzehnte ihre Dienste verrichten. So wird eine Reservierungs- oder Kreditkartenautorisierungs-Software aus den achtziger Jahren heute oft immer noch eingesetzt. Statt des ursprünglich adressierten Fachpersonals im Internet-Zeitalter nun aber vielleicht für ein breites Publikum - und aufgehübscht um eine nutzerfreundliche Web-Oberfläche.

Doch an vielen Anwendungen nagt unwiederbringlich der Zahn der Zeit - sie sind auch nach noch so viel Flickschusterei und Facelifting nicht mehr up to date und müssen komplett abgeschafft werden. Unternehmen, die geschäftskritische Applikationen betreiben, lösen Alt-Anwendungen daher heute häufig durch Standards ab oder entwickeln zusätzliche Module, um sich ihren Wettbewerbsvorteil zu sichern.

HP hat mit seinen NonStop-Servern eine Hochverfügbarkeits-Plattform für geschäftskritische Anwendungen bereit gestellt, die die Ablösung alter und die Entwicklung neuer mission-kritischer Anwendungen unterstützt und erleichtert. Wie ein Computerwoche-Beitrag zeigt, lassen sich mit NonStop-Servern die Nachteile und Komplexität von Clusterlösungen reduzieren, da jeder Server ein hybrides lokales Cluster aus Hardware- und Software-Redundanz bildet, das innerhalb einer einzigen Maschine realisiert ist. Im Vergleich zu Cluster-Modellen können neue Anwendungen und Dienste auf NonStop-Servern deutlich leichter implementiert werden.

Entwicklungsmethoden für NonStop-Systeme

Doch wie entwickelt man für NonStop-Systeme Anwendungen? Viele Applikationen, die auf NonStop-Servern laufen, sind mit Mitteln aus den achtziger und neunziger Jahren geschrieben. Das geht auch heute noch. Mit dem eigenen Transaktionsmonitor und Cobol oder C können unternehmenskritische Programme nach wie vor entwickelt werden. Auch modernere Methoden wie die Java-Enterprise konformen Container-Systeme Oracle/BEA WebLogic Server oder Red Hat JBOSS eignen sich dafür.

Für Entwickler bequemer und zeitgemäßer sind jedoch die zunehmend beliebten Java-basierenden Open-Source-Frameworks, die besonders von der jüngeren Informatiker-Generation geschätzt werden. Solche Frameworks sind als Rahmen zu verstehen, in dem der Programmierer seine Applikationen erstellen kann. Sie geben die verwendbaren Entwurfsmuster und Strukturen bei der Softwaregenerierung vor und stellen im Gegenzug dem Anwendungsentwickler Teillösungen und Schemata zur Verfügung, mit denen er schnell individuelle Aufgaben realisieren kann.

Im Kontext der Software-Modernisierung sind solche Java-basierenden Frameworks vor allem aus zwei Gründen wichtig: Zum einen ist Java die führende Programmiersprache für die Entwicklung moderner Business-Anwendungen und zum anderen vereinfachen die Frameworks die Generierung der Hauptkomponenten von Enterprise-Anwendungen gravierend. In vielen Unternehmen bilden deshalb Java-basierende Open-Source-Frameworks immer häufiger die Basis von Modernisierungsprojekten.

Das SASH-Framework

HP hat mit SASH vier Java Open Source Frameworks für NonStop-Server zertifiziert.

Mit dem SASH-Framework unterstützt HP nun ein Java-Framework, das die Entwicklung von geschäftskritischen Anwendungen auf NonStop-Servern erleichtern soll. Das von HP für NonStop Systeme zertifizierte Framework besteht aus vier aufeinander abgestimmten Tools, mit denen der gesamte Software-Enwicklungsprozess gestaltet werden kann. Das Akronym "SASH" steht dabei für die Teile MyFaces, Axis2, Spring und Hibernate.

Das Spring Framework vereinfacht als Full-Service-Tool die Java-/JavaEE-Entwicklung und dient zur Realisierung der Business-Logik. Ein breites Spektrum an Funktionalität sorgt für ganzheitliche Lösungsmethoden zur Entwicklung von Applikationen und Geschäftslogiken. Im Vordergrund steht die Entkopplung einzelner Framework-Komponenten und das Zusammenspiel unterschiedlichster Plattformen und Tools: Von J2EE-Servern über Persistenz-Tools bis hin zur Web-Integration

Die übrigen Frameworks sind für spezielle Aufgaben konzipiert: Apache MyFaces ist eine Open-Source-Implementierung der JavaServer-Faces-Spezifikation, während es sich bei Apache Axis um eine SOAP-Engine zur Konstruktion von darauf basierenden Web Services und Client-Anwendungen handelt. Red Hats Hibernate wiederum ist ein Open-Source-Persistenz-Framework für Java zur Datenbank-Abstraktion und hilft einer der wesentlichen Herausforderungen einer NonStop Portierung zu begegnen: der Anpassung der Datenbank.

Skalierbar und hochverfügbar

Das SASH-Framework unterstützt den gesamten Software-Entwicklungsprozess und alle Komponenten von Java Enterprise Applikationen.

Kunden von HP und Softwarehäuser können mit dem Framework zwei Fliegen mit einer Klappe schlagen: Zum einen lassen sich damit flexible, skalierbare Applikationen im Open-Source-Umfeld entwickeln. Gleichzeitig genügen diese Anwendungen auf NonStop-Servern modernen Hochverfügbarkeitsansprüchen, da die darunter liegende Plattform High Availability garantiert.

Eine spezielle Anpassung der Software an die NonStop-Server ist nicht notwendig. Voraussetzung für die Hochverfügbarkeit ist allerdings, dass der Programmierer die Software Cluster-fähig schreibt, also etwa dafür sorgt, dass bei Ausfall eines Knotens ein anderer die Arbeit übernimmt. SASH hilft NonStop-unerfahrenen Entwicklern jedoch, Business-Lösungen zu implementieren, so dass die NonStop-RAS-Eigenschaften im Laufzeitverhalten transparent genutzt werden können. Der Vorteil bei NonStop: Das Cluster ist einfacher zu managen.

Selbstverständlich steht es NonStop-Anwendern frei, auch andere Open-Source-Anwendungen zu nutzen - Letztere und das von HP unterstützte Framework kann sich jeder herunterladen. Das SASH-Framework wurde auch nicht speziell an NonStop-Server angepasst. "Der Added Value, den wir hinzugefügt haben, ist, dass wir das Framework auf der NonStop-Plattform getestet und zertifziert haben", sagt Hartmut Hoffmann, Produkt-Manager für NonStop-Server bei HP. "Und wir geben den Kunden, die einen Wartungsvertrag mit uns abschließen, Support. Der Value im Laufzeitverhalten für den Kunden ist, dass er darunter eine Plattform hat, die diese NonStop-Eigenschaften hat und skalierbar ist."