Fallstudie: SOA Monitoring bei der Degussa Bank

Szenario

Die Degussa Bank entwickelt und administriert momentan (Stand 2010) etwa 300 Web Services. Diese bieten zum größten Teil Zugriff auf die verschiedenen Legacysysteme der Bank - beispielsweise das Kernbankensystem Kordoba oder Auskunfteien wie die Schufa. Über die Services erhalten die Clients Zugriff auf Backend Funktionen wie beispielsweise Überweisungen oder die Anlage eines Kontos. Diese implementierten Funktionen erstrecken sich nahezu über alle fachlichen Gebiete des Privatkundengeschäftes wie beispielsweise Zahlungsverkehr, Kunden- und Kontoverwaltung, Immobilen und Wertpapiergeschäft. Die Services sind in verschiedenen Technologien (JAX WS, .net) und teilweise vom externen Dienstleistern entwickelt worden.

Anforderungen

Inzwischen nutzen mehrere hundert Mitarbeiter parallel die bereitgestellten Web Services und es werden kontinuierlich neue Web Services entwickelt. Dadurch steigt die Bedeutung enorm und es ist notwendig sich Gedanken über die Verwaltung und das Monitoring der Services zu machen. Dieses implementierte der jeweilige Web Service Entwickler selbst – beispielsweise durch eine Journaldatenbank. Konsolidierte Auswertungen auf diesen verschiedenen Datenbanken und Logdateien waren praktisch nicht möglich. Hier ist ein standardisierter Ansatz notwendig, der zugleich die Implementierungsaufwände reduziert.

Herausforderungen

Die größte Herausforderung ist es, alle in dem Unternehmen verteilten Services – unabhängig von Hersteller oder der verwendeten Technologie – auf einen Blick überwachen zu können. Für den laufenden Betrieb ist dabei insbesondere die aktuelle Verfügbarkeit wichtig. Um den Aufwand für die Administration so gering wie möglich halten zu können, sollte die Software selbstlernend sein und neue Services im Idealfall direkt erkennen und einbinden können.

Lösungen

Nach einer längeren Evaluierungsphase hat sich die Degussa Bank für die Kombination aus der Membrane SOA Registry und dem Membrane SOAP Monitor entschieden. Die Gründe hierfür waren:

  • Keine anfallenden Lizenzkosten
  • Unabhängiger Ansatz von anderen Produkten
  • Wirkliche Plattform- und Technologieunabhängigkeit
  • Gute Zusammenarbeit mit den Entwicklern und schnelle Reaktionszeiten
  • Schnelle Umsetzungsphase

Vorteile

Durch den Einsatz der beiden Applikationen ist es viel schneller möglich, auf mögliche Fehler zu reagieren. So kann die Systembetreuung bereits vor dem ersten Fehlerfall – wenn beispielsweise die WSDL eines Services verändert wurde - informiert werden. Auch bei der eigentlichen Fehleranalyse können dadurch deutlich schnellere Antwortzeiten erreicht werden. Oftmals reicht es aus, einen Link zu dem dynamischen SOAP Client zu verschicken, um die Verfügbarkeit und das fachliche korrekte Funktionieren einem Client Entwickler zu demonstrieren.

Lessons Learned

Durch den Einsatz der Registry veränderte sich die Entwicklungsphilosophie für Web Services nachhaltig. Der Entwickler wird sich der Bedeutung von Namespaces bewusst und kann diese konkret anwenden.

Return of Investment

Der Membrane SOAP Router und die Membrane SOAP Registry können ohne zusätzlichen Kosten eingesetzt werden. Dadurch beschränkt sich der Aufwand ausschließlich auf das Aufsetzen der beschrieben Infrastruktur. Die Installation erfolgt sehr einfach und bereits nach wenigen Minuten sind die ersten Service registriert worden. Bei einigen Service basierend auf der Apache CXF SOAP Engine sind wir auf Probleme gestossen. Die Aufteilung einer WSDL auf mehrere Dateien konnte die Registry nicht verarbeiten. Nach Rücksprache mit predic8 wurde die Importfunktion entsprechend erweitert und stand bereits mit dem nächsten Release zur Verfügung.

Fazit

Die Verwendung der beiden Produkte hat sich für die Degussa Bank bereits nach kurzer Zeit als sinnvoll herausgestellt und ist aus dem Arbeitsalltag nicht mehr wegzudenken.

Ausblick

Für die Zukunft wünschen wir uns eine engere Verbindnung von SOAP Monitor und Registry. Hier könnten erhebliche Synergieeffekte realisiert werden. Beispielsweise könnte der SOAP Monitor die WSDLs parsen und neue Services automatisch in der Registry registrieren. Weiterhin wäre sinnvoll, über die Oberfläche der Registry auf einzelne Requests zugreifen zu können, um noch schneller Fehler identifizieren zu können.