Multi Tenancy, Web Services & REST

Multi-Tenancy (Mandantenfähigkeit)

In der Einführung zu Cloud Computing wurde die Eigenschaft des Resource Pooling für Cloud Computing genannt. Damit die Benutzung phyischer Ressourcen durch mehrere Benutzer funktioniert wird Mandatenfähigkeit eingesetzt. 
Bei Multi-Tenancy bietet ein physischer oder virtueller Server eine Anwendung an, die von verschiedenen Nutzern verwendet werden kann. Wobei jeder Nutzer das Gefühlt hat, dass er die Anwendung exklusiv verwendet.

Es ergeben sich folgende Anforderungen auf der Applikationsebene für Multi-Tenancy
  • Isolierte Verwendung
  • Datensicherheit
  • getrennte Recovery-Prozeduren
  • getrennte Upgrades
  • Skalierbarkeit
  • Metering
  • Isolation auf verschiedenen Datenschichten
Multi-Tenancy bei SaaS
Es werden verschiedene Konzepte für Multi-Tenancy in SaaS eingesetzt.
Beim Simple Multi-Tenancy hat jeder Kunde seine eigenen Ressourcen, die getrennt von anderen Kunden gehalten werden.

Beim Fine Grain Multi-Tenancy werden alle Ressourcen unter den Nutzern geteilt, aber die Kundendaten und andere Zugriffsmöglichkeiten bleiben innerhalb der Applikationen getrennt. Dies ist effizienter als das Simple Multi-Tenancy.


Multi-Tenancy bei PaaS
In einer PaaS Architektur wird Virtualisierung eingesetzt, um die Software von mehreren Kunden getrennt voneinander laufen zu lassen. So ist der Code von jedem Kunden isoliert.

Web Services in der Cloud

"Definition: A Web service is a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format (specifically WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards." von W3C

Die Motivation Web Services in der Cloud einzusetzen ist, dass dies einen universellen Zugriff auf die Cloud-Dienste durch Endnutzer von Anwendungen, Administratoren der Cloud-Dienste und anderen Cloud-Anwendungen erlaubt.

Alles zu Web Service Architekturen kann direkt auf der Seite des W3C nachgelesen werden: https://www.w3.org/TR/2004/NOTE-ws-arch-20040211/.
Besonders interessant für den Einsatz in der Cloud von Web Services sind WSDL und SOAP. WSDL ist eine Sprache, um Web Services zu beschreiben und SOAP ist ein Framework, um XML Nachrichten zu verpacken und auszutauschen.

REST (Representational State Transfer)

In der Vorlesung haben wir noch über REST als Architekturstil gesprochen. 
Dieser wird hier https://www.ics.uci.edu/~fielding/pubs/dissertation/fielding_dissertation.pdf beschrieben.

Quellen

https://se2.informatik.uni-wuerzburg.de/pa/uploads/papers/paper-371.pdf

Kommentare

Beliebte Posts aus diesem Blog

Projektergebnis

TTI Vorlesung

Cloud Computing Patterns