The Doppler Quarterly (DEUTSCHE) Frühjahr 2018 - Page 52

wird. Bei Nutzung eines Container-Ansatzes sollte sich die Geschäftslogik außerhalb der Datenbank befinden, um die Skalierung unabhängig von anderen Anwendungsfunktionen zu ermöglichen und Flexibilität bei der Auswahl des Datenspeichers, der verwendet werden soll, zu erlauben. Die Geschäftslogik sollte im Idealfall mit anderen Aspekten der Anwendungsfunktionalität über ein Publish/Subscribe-Modell verknüpft werden. Dadurch ist Skalierbarkeit auf ver- schiedenen Ebenen der Anwendung möglich, wenn sich die Workloads weiterentwickeln. Lektion 3 – Der Anwendungsstatus sollte niemals in Containern gespeichert werden. Container sind flüchtige Ressourcen, die nicht zum Speichern persis- tenter Informationen verwendet werden können. Stattdessen sollte eine Daten- speicherebene genutzt werden, um den Status zu verfolgen, der für das Manage- ment von Workflows und der Benutzererfahrung notwendig ist. Lektion 4 – Messaging und Workflow sollten von Services außerhalb der Con- tainer und der Anwendungslogik gesteuert werden. So wird sichergestellt, dass Services unabhängig von der Anwendungsfunktionalität weiterentwickelt und skaliert werden können. Diese Vorgehensweise erlaubt außerdem eine zuverläs- sigere Verarbeitung von erneuten Versuchen nach Fehlern. Diese Lektionen zeigen, wie wichtig es ist, die zwei zentralen Cloud-Grundsätze bei der Migration von Containern in die Cloud zu berücksichtigen: die Trennung von Rechenleistung und Speicherkapazität und die Aufteilung monolithischer Anwendungen in kleinere, lose verbundene Funktionsmodule. Zudem bieten Container die Möglichkeit, Ressourcen bei Bedarf zu implementieren und wie- der zu entfernen, wenn sie nicht mehr benötigt werden. Damit und mit den genannten Lektionen können Architekturen bereitgestellt werden, in denen die Vorteile von Cloud und Containern kombiniert sind. Werden cloudbasierte Datenservices genutzt, um den persistenten Datenspei- cherbedarf von Containern zu erfüllen, lassen sich die wichtigsten Nachteile von „Daten im Container“ (keine unabhängige Skalierung), Docker-Volumes (die an bestimmte Maschinen gebunden sind) oder der Erstellung von „Datencont- 50 | THE DOPPLER | FRÜHJAHR 2018