Sam Newman

Vom Monolithen zu Microservices


Скачать книгу

aus dem alten Schema lesen

       Schritt 3: Synchrones Schreiben, aus dem neuen Schema lesen

       Wo dieses Pattern genutzt werden kann

       Wo wir es verwenden

       Pattern: Tracer Write

       Datensynchronisierung

       Beispiel: Bestellungen bei Square

       Wo wir es verwenden

       Die Datenbank aufteilen

       Physische versus logische Datenbanktrennung

       Zuerst die Datenbank oder zuerst den Code aufteilen?

       Zuerst die Datenbank aufteilen

       Zuerst den Code aufteilen

       Datenbank und Code gleichzeitig aufteilen

       Was sollte ich also als Erstes aufteilen?

       Beispiele zur Schemaaufteilung

       Pattern: Split Table

       Wo wir es verwenden

       Pattern: Move Foreign-Key Relationship to Code

       Den Join ersetzen

       Datenkonsistenz

       Wo wir es verwenden

       Beispiel: Gemeinsam genutzte statische Daten

       Transaktionen

       ACID-Transaktionen

       Weiterhin ACID, aber ohne Atomarität?

       Zwei-Phasen-Commit

       Verteilte Transaktionen: Sagen Sie einfach Nein!

       Sagas

       Fehlersituationen in Sagas

       Sagas implementieren

       Saga versus verteilte Transaktionen

       Zusammenfassung

       5Wachsende Probleme

       Mehr Services – mehr Schmerzen

       Ownership im großen Maßstab

       Wie kann sich dieses Problem zeigen?

       Wann kann sich das Problem zeigen?

       Mögliche Lösungen

       Disruptive Änderungen

       Wie kann sich dieses Problem zeigen?

       Wann kann sich das Problem zeigen?

       Mögliche Lösungen

       Reporting

       Wann kann sich dieses Problem zeigen?

       Mögliche Lösungen

       Monitoring und Troubleshooting

       Wann kann sich dieses Problem zeigen?

       Wie kann sich das Problem zeigen?

       Mögliche Lösungen

       Lokale Entwicklung

       Wie kann sich dieses Problem zeigen?

       Wann kann sich das Problem zeigen?

       Mögliche Lösungen

       Zu viele Dinge laufen lassen

       Wie kann sich dieses Problem zeigen?

       Wann kann sich das Problem zeigen?

       Mögliche Lösungen

       End-to-End-Tests