Loadbalancing Web Services in der Amazon Cloud

Ausgangslage

Duden bietet Internet basierte Korrekturlösungen unter www.duden.de an. Die Korrekturen werden von mehreren Instanzen des Duden Enterprise Servers, die in der Amazon Cloud betrieben werden durchgeführt. Bisher fand ein Loadbalancing auf der Ebene des HTTP Protokolls statt, das die Last auf die einzelnen Knoten verteilt hat. Eine Skalierung der Server Farm sorgte für den Start zusätzlicher Knoten bei Last oder für die Abschaltung von Knoten bei sinkender Auslastung.

Das bisherige Loadbalancing unterstützte keine Sitzungen auf der Basis des SOAP Protokolls. Sticky Sessions mit SOAP waren jedoch notwendig, um weitere Anwendungen mit der Server Farm betreiben zu können. Für diese Anwendungen wurden bisher zusätzlich dedizierte Server betrieben.

Anforderungen

Um alle Anwendungen mit den Rechnern der Server Farm betrieben zu können wurde ein Loadbalancing benötigt, das die folgenden Anforderungen erfüllte:

  • Unterstützung von Sessions, die über ein beliebiges XML Element im SOAP Body gekennzeichnet werden.
  • Weiterleitung aller Anfragen einer Session an den gleichen Server (Sticky Session).
  • Je nach Last muss die Liste der Server, die an der Lastverteilung teilnehmen erweitert oder verkürzt werden können.
  • Betrieb in der Amazon Cloud.
  • Mehrere hunderttausend Anfragen pro Stunde sollten verarbeitet werden können.
  • Verschlüsselung über SSL.

Membrane Service Proxy

Bei der Suche nach einem passenden Loadbalancer wurde auch der Membrane Service Proxy untersucht. Membrane hatte zu diesem Zeitpunkt noch keine Unterstützung für SOAP Sessions. Dafür war Membrane leicht mit Java erweiterbar und der Quellcode ist frei verfügbar.

Realisierung

Die Entscheidung fiel auf eine Erweiterung von Membrane Service Proxy um SOAP basierte Sitzungen. Um die Erweiterung zu realisieren wurde mit predic8, dem Hersteller des Membrane Service Proxy ein Open Source Sponsoring Vertrag geschlossen. Die für den Duden realisierten Funktionen wurden unter der ASF Open Source Lizenz veröffentlicht und stehen damit der Allgemeinheit zur Verfügung. Duden profitiert dafür von Bugfixes und Erfahrungen anderer Benutzer der Erweiterung. Da die Erweiterung in die Membrane Distribution eingebaut wurde, kann Duden ohne ein Migrationsprojekt durchzuführen auf neue Membrane Versionen aktualisieren.

Die Erweiterung bestand aus den folgenden Bausteinen:

  • Einem Extraktor, der die ID der Session aus einem XML Element entnimmt.
  • Einer REST basierten Schnittstelle, über die neue Knoten bei einem Cluster angemeldet und abgemeldet werden können.
  • Einer Web Oberfläche für die Verwaltung von Clustern.

Erfahrungen

"Durch die Erweiterbarkeit von Membrane konnten wir das Loadbalancing genau so realisieren, wie es unseren Anforderungen entsprach. Seit über einen Jahr arbeitet Membrane Service Proxy zuverlässig und performant: die Maschine, auf der der Balancer läuft, ist kaum unter Last. Wir würden Membrane Service Proxy so jederzeit wieder einsetzen."

Heinz-Detlev Koch, Entwicklung Sprachtechnologie.

Über Duden

Als maßgebliche Instanz für die deutsche Sprache achtet Duden nicht nur darauf, welche Neuerungen dauerhaft in unseren sprachlichen Alltag einziehen, sondern sorgt mit einem vielfältigen Produktangebot auch dafür, dass das aktuelle Regelwerk unabhängig von der individuellen Nutzungssituation jedermann jederzeit zur Verfügung steht. Zum Produktangebot gehören auch die von der Duden-Sprachtechnologie entwickelten und vertriebenen Lösungen und Anwendungen für die fehlerfreie professionelle schriftliche Kommunikation. Während Privatkunden vor allem von der Duden-Rechtschreibprüfung in ihrem Textverarbeitungsprogramm profitieren können, bietet die Sparte der Duden Business Solutions maßgeschneiderte branchenübergreifende Lösungen, die auf systemübergreifende Einsätze und großvolumige Umfänge in der Qualitätssicherung zugeschnitten und mit unternehmensspezifischen Erweiterungen ausgestattet sind.

Alle digitalen Textkorrekturlösungen von Duden greifen auf den umfangreichsten und aktuellsten redaktionell gepflegten Wortbestand der deutschen Sprache zu und können flexibel in bestehende Prozesse und Softwarelösungen eingebunden werden. Sie werden seit 2001 vertrieben und gelten am Markt als führend. Duden-Korrektursoftware wird heute u. a. als Einzelplatzversion, Netzwerklösung und als integraler Bestandteil in Office-Programmen, Satz- und Redaktionssystemen, Übersetzungssystemen, E-Mail-Provider-Systemen und Finanzverwaltungssoftware eingesetzt und von Millionen von Nutzern geschäftlich und privat genutzt.

Mehr Informationen finden Sie im Internet unter www.duden-business-solutions.de.