Cloud Computing ist nicht hinreichend für Multi-Tenancy
Immer mehr amerikanische Softwareanbieter, insbesondere im Open Source Umfeld, gehen dazu über, ihre Lösung auch als Images für die Amazon Elastic Computer Cloud (EC2) oder ähnliche Infrastrukturplattformen anzubieten (Hier das Beispiel SnapLogic).
Dieses Verteilungsmodell bietet unbestritten einige interessante Vorteile für den Nutzer, da für den Betrieb der Lösung keine eigene Infrastruktur bereit gehalten werden muss, und die Skalierbarkeit der Anwendung nach Bedarf mehr oder weniger unbeschränkt gegeben ist.
Wichtig ist aber zu beachten, dass dieses Betriebsmodell nicht zwingend eine Multi-Tenant Architektur der Applikation voraussetzt. Die Hardware ist zwar virtualisiert aber die Single-Tenant Applikation, die so angeboten wird, bleibt eine Single-Tenant Applikation, auch wenn Sie in der "Cloud" betrieben wird.
Wir können in diesem "Single-Tenant Application in the Cloud" Modell zwei Varianten unterscheiden.
- Der Softwarenutzer kauft die Applikation und betreibt sie selber in der "Cloud"
- Der Softwareanbieter betreibt die Applikation in der "Cloud" und verlangt dafür eine Gebühr.
Natürlich kann man sich noch Zwischenstufen vorstellen, aber der Einfachheit halber, lassen wir diese hier ausser acht.
Auf jeden Fall ist es bei beiden Varianten so, dass durch die Single-Tenant Architektur der Applikation für jeden Kunden eine separate Instanz betrieben wird. Das bedeutet, dass der Programmcode auf jeder Instanz verschieden sein kann und damit auch jede Instanz separat gewartet werden muss. Updates und Patches beispielsweise müssen für jede Instanz einzeln eingespielt werden.
Das ist der entscheidende Unterschied zu echten Multi-Tenant Platform as a Service Angeboten wie von Salesforce, Longjump, DabbleDB, Coghead oder Rollbase, die die Entwicklung und den Betrieb von SaaS Anwendungen ermöglichen, indem Sie nicht nur Infrastruktur, sondern ein Applikationsframework bereitstellen. Google nimmt hier mit der App Engine eine Art Mittelstellung ein. Es wäre zwar blödsinn auf der App Engine Single-Tenant Applikationen zu Entwicklen, aber es ist denkbar.
Das heisst natürlich nicht, dass es nicht möglich ist, Multi-Tenant Applikationen auf Amazon E2C oder anderen Cloud Computing Anbietern zu betreiben, nur muss der Entwickler das Multi-Tenancy Konzept in seiner Anwendung selber realisieren und dass ist meistens (noch) nicht der Fall.





Email Article 