Christian Schwörer

Novatec Consulting GmbH

Bio

Christian

In seiner Tätigkeit für die Novatec Consulting GmbH unterstützt Christian Schwörer Kunden bei der digitalen Transformation hin zu verteilten, Cloud-basierten (Microservice-)Architekturen. Dabei setzt er häufig und gerne Spring Boot/Cloud ein, zunehmend aber auch andere Frameworks wie Quarkus, Micronaut oder Ktor. Er ist der Überzeugung, dass sich die praktische Auseinandersetzung mit dem Thema für jeden Architekten und Entwickler lohnt - auch wenn Microservices sicher nicht die „Silver Bullet“ für alle Probleme des Software Engineerings sind und daher ganz gezielt eingesetzt werden sollten.

Resilient Software Design 101 – Expect the unexpected

In den letzten Jahren kam wohl kein Software-Vorhaben um den Microservice-Hype herum. Und auch wenn das Architektur-Pattern viele – größtenteils organisatorische – Probleme adressiert, bringt es eine ganze Reihe neuer Herausforderungen mit sich.

Wo beispielsweise in einem Mono-/Modulithen ein einfacher Methodenaufruf reicht, kann in einem verteilten System ein (Remote-)Call zu einem anderen Microservice notwendig werden. Und plötzlich wird aus einer lokalen Transaktion ein Problem mit verteilter Komplexität. Und einzelne Prozessschritte können aufgrund von beispielsweise Netzwerk- oder Infrastrukturausfällen im ungünstigsten Fall zu einem vollständigen Abbruch oder Dateninkonsistenzen führen.

Glücklicherweise gibt es eine Fülle von Lösungsmustern, Frameworks und Service Meshes, die dabei helfen sollen, verteilte Komplexität beherrschbar zu machen. Doch wie sieht deren konkrete Umsetzung aus?

Begleite uns auf eine (retrospektiven) Reise, wie wir eine verteilte Microservice-Anwendung nach und nach resilient gestalten konnten. Dabei begegnen wir bewährten Resilience Pattern und deren konkreter Realisierung. Anhand tatsächlich aufgetretener Probleme und Fehler wird praxisorientiert vorgestellt, wie wir diese iterative lösen konnten.

Hier erfährst Du:

  • Welche Herausforderungen ein verteiltes System mit sich bringt
  • Was für Architektur-Pattern es zur Lösung gibt und wie deren Umsetzung aussieht
  • Unsere Lessons Learned, wie wir eine verteile Anwendung resilient(er) gestalten konnten