Home >Documents >Microservices & Makro-Architektur · PDF file Microservices & Makro-Architektur 51...

Microservices & Makro-Architektur · PDF file Microservices & Makro-Architektur 51...

Date post:15-Jun-2020
Category:
View:2 times
Download:0 times
Share this document with a friend
Transcript:
  • 12.09.18

    1

    Drei zentrale Entwurfsfragen bei vertikalen Anwendungsarchitekturen

    STEFAN ZÖRNER // EMBARC

    Java Forum Nord

    Hannover, 13. September 2018

    0

    Microservices & Makro-Architektur

    2 Microservices & Makro-Architektur embarc.de

    Microservices & Makro-Architektur 3 zentrale Entwurfsfragen ... Moderne Architekturstile wie Microservices oder Self-contained Systems lassen Teams, die einzelne Teile entwickeln, viel Freiheit beim Treffen von Technologieentscheidungen.

    Drei Fragestellungen entpuppen sich jedoch regelmäßig als Kandidaten, um in der Makro-Architektur (also übergreifend) adressiert zu werden, zumindest zu einem gewissen Grad. Sonst wirkt die Anwendung nicht aus einem Guss oder verfehlt andere Architekturziele (z.B. flexibel auf Veränderungen reagieren zu können).

    In diesem Vortrag stelle ich die drei Themen entlang eines durchgängigen Beispiels vor. Ich zeige gängige Lösungsoptionen und Einflussfaktoren, die Euch eine informierte Auswahl für Eure Vorhaben ermöglichen. Wechselseitige Beeinflussungen, Kompromisse und Real World-Entscheidungen eingeschlossen.

  • 12.09.18

    2

    3 Microservices & Makro-Architektur embarc.de

    Stefan Zörner

    n  Softwareentwickler + -architekt bei embarc in Hamburg n  Vorher oose, IBM, Mummert + Partner, Bayer AG, …

    Schwerpunkte: n  Softwarearchitektur (Entwurf,

    Bewertung, Dokumentation) n  Java Technologien

    [email protected]

    @StefanZoerner

    xing.to/szr

    4 Microservices & Makro-Architektur embarc.de

    1 Heilsversprechen reloaded

    2 Themen für die Makroarchitektur?

    3 Thema I

    4 Thema II

    5 Thema III

    6 Weitere Informationen und Fazit

    Agenda

  • 12.09.18

    3

    5 Microservices & Makro-Architektur embarc.de

    1 Heilsversprechen reloaded

    2 Themen für die Makroarchitektur?

    3 Thema I

    4 Thema II

    5 Thema III

    6 Weitere Informationen und Fazit

    Agenda

    1

    6 Microservices & Makro-Architektur embarc.de

    Trends im Zeitstrahl

    1990

    1995

    2000

    2005

    2010

    2015

    Objektorientierung

    SOA

    Model Driven Architecture

    Cloud Computing

    Microservices

    Große Trends der IT. (unvollständige Auswahl)

  • 12.09.18

    4

    7 Microservices & Makro-Architektur embarc.de

    1. Zwei Heilsversprechen Diese Trends versprechen zwei Formen des Glücks ...

    2. Kosten sparen in Entwicklung und Betrieb, z.B. durch ...   effizientere Werkzeuge und

    Methoden   Wiederverwendung

    Kosteneffizienz Flexibilität

    Schnell auf Veränderungen reagieren können, z.B. auf ...   neue fachliche Anforderungen   technologische Trends   Schwankungen in der Last

    8 Microservices & Makro-Architektur embarc.de

    Microservices in kurz …

    “In short, the microservice architectural style is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms…”

    (James Lewis, Martin Fowler, 2014) ➔  https://martinfowler.com/articles/microservices.html

    Charakteristische Eigenschaften ✔  Zerlegung in relativ kleine (fachliche) Services ✔  Services sehr lose gekoppelt ✔  Services einzeln installierbar und upgradebar ✔  Dezentrale Datenhaltung ✔  Hoher Freiheitsgrad bei Technologieauswahl

  • 12.09.18

    5

    9 Microservices & Makro-Architektur embarc.de

    Das Versprechen einhalten ... Wie versuchen Microservices leicht auf Änderungen zu reagieren?

    Neue fachliche Anforderungen schnell umsetzen   Kleinteiligkeit („Micro“), als Gegenmodell zum Monolith   Lose Kopplung der Services, leichte Austauschbarkeit

    Technologische Trends schnell aufgreifen   Hoher Freiheitsgrad bei Technologieauswahl   Services mit unterschiedlichem Technologie-Stack möglich

    Schwankungen in der Last auffangen   Einzelne Services einzeln skalierbar   Services schnell start- und wegwerfbar

    10 Microservices & Makro-Architektur embarc.de

    *Eine* Anwendung So sollte es sich für den Benutzer auch anfühlen.

    Ein Spannungsfeld

    Technologische Vielfalt in den “Vertikalen”   Paradigmen   Programmiersprachen   Bibliotheken und

    Frameworks   ...

    z.B. in der Persistenz (polyglott)

  • 12.09.18

    6

    11 Microservices & Makro-Architektur embarc.de

    FLEXess – Ein Beispiel

    12 Microservices & Makro-Architektur embarc.de

    FLEXess – Ein Beispiel Erste Context Map für die Domäne einer Online-Schachplattform

  • 12.09.18

    7

    13 Microservices & Makro-Architektur embarc.de

    FLEXess – Ein Beispiel Daraus Kandidaten ableiten für Vertikalen (Services) ...

    Sp iel

    er

    La uf

    en de

    Pa rt

    ien

    Sp iel

    re ge

    ln

    Di ag

    ra m

    m e

    Co m

    pu te

    r- Ge

    gn er

    14 Microservices & Makro-Architektur embarc.de

    1 Heilsversprechen reloaded

    2 Themen für die Makroarchitektur?

    3 Thema I

    4 Thema II

    5 Thema III

    6 Weitere Informationen und Fazit

    Agenda

    2

  • 12.09.18

    8

    15 Microservices & Makro-Architektur embarc.de

    Makro- vs. Mikroarchitektur

    Entscheidungen ... Welche Aspekte sind für alle Bestandteile gleich?

    (Makro) Wo ist Spielraum?

    (Mikro)

    16 Microservices & Makro-Architektur embarc.de

    Vorteile einer Standardisierung

      Entwickler wechseln leicht zwischen Teams und Projekten

      Konzentration auf Applikationsspezifika (z.B. Fachlichkeit) leichter möglich

      Wiederverwendung von technischen Lösungen

      Vermeidung von Fehlern in kritischen Bereichen durch erprobte Konzepte

  • 12.09.18

    9

    17 Microservices & Makro-Architektur embarc.de

    Vorteile einer Individualisierung

      Einsatz optimaler Lösungen für spezifische Probleme möglich

      Neue Trends lassen sich schneller aufgreifen

      Fehlentscheidungen haben geringere Relevanz

      Geringere Abhängigkeit von einzelnen Lieferanten ...

    18 Microservices & Makro-Architektur embarc.de

    Themen (typische Kandidaten)

    Interaktion mit Benutzern und

    Fremdsystemen

    1

    "Unter der Haube“

    2

    Entwicklung und Weiterentwicklung

    3

    Zielumgebung und Betrieb

    4

  • 12.09.18

    10

    19 Microservices & Makro-Architektur embarc.de

    Themenkomplex 1

    n  Benutzeroberflächen (UI) n  Kommunikation und Integration n  Internationalisierung n  Ergonomie, Barrierefreiheit n  Plausibilisierung und Validierung n  Ausnahme-/ Fehlerbehandlung n  Ablauf-, Dialog- und Workflow-Steuerung n  ...

    Interaktion mit Benutzern / Fremdsystemen

    20 Microservices & Makro-Architektur embarc.de

    Themenkomplex 2

    n  Persistenz n  Sicherheit, Authentifizierung / Autorisierung n  Transaktionsbehandlung n  Session- und Zustandsbehandlung n  Ereignis- und Fehlerbehandlung n  Parallelisierung und Threading n  Caching n  Geschäftsregeln n  ...

    "Unter der Haube“

  • 12.09.18

    11

    21 Microservices & Makro-Architektur embarc.de

    Themenkomplex 3

    n  Vorgehen, z.B. Scrum, BDD, UCD n  Modellierung n  Versionsverwaltung n  Build-Management n  Testen n  Code-Generierung n  Konfigurieren, Automatisieren n  Migration n  ...

    Entwicklung und Weiterentwicklung

    22 Microservices & Makro-Architektur embarc.de

    Themenkomplex 4

    n  Zielumgebung n  Verteilung, Deployment n  (Hoch-)verfügbarkeit, Disaster-Recovery n  Virtualisierung, Container n  Skalierung n  Resilienz n  Logging und Tracing n  Systemmanagement und Administrierung n  ...

    Zielumgebung und Betrieb

  • 12.09.18

    12

    23 Microservices & Makro-Architektur embarc.de

    Und jetzt?

    Entscheidungen ... Zu bestimmten Themen gibt es Best Practices, Industrie- Standard, … Zu einigen Themen gibt es meiner Erfahrung nach regelmäßig Diskussionen „ob und wenn ja wie man das zentral macht .... Drei dieser Themen habe ich jetzt mal rausgepickt, um genau das zu diskutieren ...

    24 Microservices & Makro-Architektur embarc.de

    1 Heilsversprechen reloaded

    2 Themen für die Makroarchitektur?

    3 Thema I: Die UI-Frage

    4 Thema II

    5 Thema III

    6 Weitere Informationen und Fazit

    Agenda

    3

  • 12.09.18

    13

    25 Microservices & Makro-Architektur embarc.de

    Die UI-Frage

    Frage: Wie realisieren wir mit mehreren Teilen *ein* UI?

    Anforderung: Trotz mehrerer Teile präsentiert sich die Anwendung dem Benutzer “aus

Click here to load reader

Embed Size (px)
Recommended