Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Wie eine Schildkröte uns hilft, Ketten zu sprengen

Wie eine Schildkröte uns hilft, Ketten zu sprengen

Microservices ermöglichen es uns, Geschäftsfähigkeiten getrennt voneinander zu entwickeln. Aber wie können Services unterschiedlicher Domänen kommunizieren, ohne eine enge Kopplung einzugehen, die dynamische Entwicklung blockiert? Wie vermeiden wir Aufrufketten und erreichen, dass Informationen für Millionen von Sendungen in kürzester Zeit dort sind, wo sie gebraucht werden?
Als Antwort auf diese Fragen wollen wir, bei Hermes, Event Driven Architecture als unternehmensweites Prinzip etablieren. Dabei nimmt Kafka eine zentrale Rolle ein.
Wir zeigen, wie Software-Architektur sich im Kontext von Ereignissen verändert, wie wir mit unserer Open Source Software „Galapagos“ Entwickler dabei unterstützen, Kafka event driven zu nutzen.

Florian Albrecht
Hermes Germany GmbH - Solution Architect
Florian Albrecht entwickelt seit über 15 Jahren Java im professionellen Umfeld. Seit 2017 ist er als Solution Architect unterwegs und verstärkt seit 2019 in dieser Rolle das Hermes Germany Architektur-Team. Einer seiner Schwerpunkte bei Hermes ist die praxisnahe Unterstützung der Entwicklungsteams auf dem Weg in eine ereignisorientierte Architektur. Zudem ist er Lead-Architect unserer Open Source Software Galapagos.

Gunnar Kiesel
Hermes Germany GmbH - Teamlead Architecture & Information Security
Gunnar Kiesel leitet in der Hermes Germany seit 2017 das Team für Architektur und Informationssicherheit. In seinen mehr als 11 Jahren im Unternehmen, war er auch als Software-Entwickler, Software- und Enterprise- Architekt tätig. Davor war er mehrere Jahre als Entwickler und Architekt in der Beratung unterwegs. Vor diesem Hintergrund, gilt sein Interesse agilen Architekturen und Architekturprozessen.

Hermes Germany GmbH

September 28, 2022
Tweet

More Decks by Hermes Germany GmbH

Other Decks in Technology

Transcript

  1. Kafka – Wie eine Schildkröte uns hilft,
    Ketten zu sprengen
    Florian Albrecht & Gunnar Kiesel
    System Architektur
    1

    View full-size slide

  2. Wie eine Schildkröte
    uns hilft,
    Ketten zu sprengen
    Event Driven Architecture in einer agilen Organisation.
    Florian Albrecht & Gunnar Kiesel
    Hermes Germany GmbH
    Hamburg, September 2022

    View full-size slide

  3. Hermes
    4
    Bis zu 11.000 Zustellende
    liefern für Hermes aus.
    Bis zu 2,5 Mio.
    Zustellungen am Tag.
    Hermes ist in
    Deutschland der
    Marktführer im
    Großstücksegment
    und die Nr. 2 in der
    B2C-Paketzustellung.
    > 45.000
    Annahmestellen
    in ganz Europa.
    > 500
    aktive IT-Applikationen.
    18.255 Mitarbeitende
    sind bei der Hermes
    Gruppe weltweit
    angestellt.
    350 Mitarbeitende in der
    IT.
    Über 16.500 Hermes
    PaketShops
    in ganz Deutschland.
    2,54 Milliarden EUR
    betrug der Gesamtumsatz der
    Hermes Gruppe im
    Geschäftsjahr 2020/21.
    Wie eine Schildkröte uns hilft, Ketten zu sprengen - Event Driven Architecture in einer agilen Organisation.

    View full-size slide

  4. • behindern Veränderung
    • sind ein Resilienz-Risiko
    • verlängern Laufzeiten
    • erschweren die Nachvollziehbarkeit
    Wie eine Schildkröte uns hilft, Ketten zu sprengen - Event Driven Architecture in einer agilen Organisation.
    5
    Schnittstellenketten
    E-Commerce
    Auftraggeber
    Auftrags-
    Eingang
    Standort-
    System
    Scanner-
    Schnittstelle
    Scanner-
    Backend
    Scanner-
    App

    View full-size slide

  5. • verbessert Resilienz und Dynamik von Apps
    • bringt Beweglichkeit in Ketten
    • Information an der Quelle beziehen
    • Verantwortung liegt beim Handelnden
    Wie eine Schildkröte uns hilft, Ketten zu sprengen - Event Driven Architecture in einer agilen Organisation.
    6
    Lose Kopplung
    E-Commerce
    Auftraggeber
    Auftrags-
    Eingang
    Standort- System
    Scanner-
    Backend
    Scanner-
    App
    „Info-
    Pool“

    View full-size slide

  6. • Kommunikation anhand wichtiger Geschäftsereignisse
    • Ereignisse beschreiben, was passiert ist, nicht, was als
    nächstes passieren soll
    • Publish/Subscribe Pattern ermöglicht lose gekoppelte
    1:n Schnittstellen
    • Standardisierte Nachrichtenformate
    Wie eine Schildkröte uns hilft, Ketten zu sprengen - Event Driven Architecture in einer agilen Organisation.
    7
    Event Driven Architecture 22:47 - Ankunft der
    Sendung für Di.
    8-10 Uhr prognostiziert
    9:23 -
    Wunschzustellung
    „Paketshop“ gebucht

    View full-size slide

  7. • DevOps-Teams haben Produktfokus
    • übergreifende Regeln lassen sich schwer durchsetzen
    • wenig Raum für technische Innovation, wenn sich
    dadurch kein direkter Produktvorteil ergibt
    • Quality-Gates würden Geschwindigkeit beeinträchtigen
    • Apache Kafka allein führt nicht zu einer
    Event Driven Architecture
    Wie eine Schildkröte uns hilft, Ketten zu sprengen - Event Driven Architecture in einer agilen Organisation.
    8
    Umsetzung
    in der agilen Organisation

    View full-size slide

  8. Lösungsansatz: Galapagos
    Wie eine Schildkröte uns hilft, Ketten zu sprengen - Event Driven Architecture in einer agilen Organisation.
    9
    Kafka Self-Service Software, die unseren Architekturansatz stützt
    und gleichzeitig einen Mehrwert für die DevOps-Teams liefert.
    • Event-Registry mit
    Schema-
    Kompatibilität
    • automatisierte
    Schnittstellen-
    Dokumentation
    • Auditierte
    Rechtevergabe
    • DevOps werden zur
    EDA geführt
    • Keine (manuellen)
    Quality Gates
    • Unterstützung bei
    Konfiguration und
    Nutzung
    • Self-Service Zugang
    zu Kafka
    • Staging-
    Unterstützung

    View full-size slide

  9. Wie eine Schildkröte uns hilft, Ketten zu sprengen - Event Driven Architecture in einer agilen Organisation.
    11
    Neue Produktidee
    Daten werden benötigt
    Recherche
    Vorhandene Topics
    durchsuchen
    Anforderung
    Neues Geschäftsereignis
    ggf. anfordern
    Staging
    Auf weitere Stages
    bis zur Produktion
    Abonnieren
    Leserechte auf
    Topic erhalten
    Anbindung
    Kafka-Consumer
    implementieren
    Freigabe
    Geschützte Topics: Freigabe
    durch Anbieter
    Zugangsdaten
    Kafka-Zugangsdaten
    beziehen
    Konsumenten-Workflow

    View full-size slide

  10. Wie eine Schildkröte uns hilft, Ketten zu sprengen - Event Driven Architecture in einer agilen Organisation.
    13
    Aktualität
    • Echtzeit-Eventstreaming möglich
    • Zentrale Informationsquelle für
    Datenstruktur und Änderungen
    • Schnell neue potentielle
    Mehrwerte erkennen
    Transparenz
    • Volles Wissen über Konsumenten
    • Datenflüsse
    • Optimierung von Prozessen
    Zuverlässigkeit
    • Kompatibilitätsgarantien
    • „Deprecation“ Workflow für
    Topics (mit Mindestlaufzeit)
    Entkopplung
    • Technisch durch Kafka
    • Fachlich: Keine Absprache mit
    Datenanbieter erforderlich (außer
    ggf. Freigabe)
    Vorteile

    View full-size slide

  11. • Standard-Java-Applikation (Spring Boot) mit
    Angular-Frontend, als Docker-Image paketiert
    • Alle Metadaten werden in Kafka-Topics gespeichert
    • Open Source seit Ende 2020
    • Integration mit EAM-Tools wie LeanIX über Kafka-
    Topics
    • Keine Unterstützung von Cloud-Anbieter-
    Lösungen wie Amazon KMS oder Google Pub/Sub
    aufgrund fehlender Features
    Wie eine Schildkröte uns hilft, Ketten zu sprengen - Event Driven Architecture in einer agilen Organisation.
    14
    Technische Daten

    View full-size slide

  12. • EDA und Galapagos bei Hermes inzwischen verankert,
    kontinuierlicher Ausbau
    • Erste weitere Nutzer, z.B. Otto
    • Verstärkte Partnerschaft mit Confluent, z.B. Webinare und
    Podcast
    • Mit Einführung von Kafka und Galapagos ist es nicht getan:
    Idee der EDA braucht Supporter und Kommunikation
    Wie eine Schildkröte uns hilft, Ketten zu sprengen - Event Driven Architecture in einer agilen Organisation.
    15
    Zusammenfassung und Ausblick
    • Contributors Welcome!
    • GitHub-Projekt erste Anlaufstelle,
    z.B. EDA Principles
    • Demo-Setup verfügbar

    View full-size slide

  13. Wie eine Schildkröte uns hilft, Ketten zu sprengen - Event Driven Architecture in einer agilen Organisation.
    16
    Florian Albrecht
    Solution Architect
    Hermes Germany GmbH
    Essener Strasse 89
    22419 Hamburg
    [email protected]
    Gunnar Kiesel
    Teamlead Architecture
    & Information Security
    Hermes Germany GmbH
    Essener Strasse 89
    22419 Hamburg
    [email protected]

    View full-size slide