40
Gemeinsam mehr erreichen. DOAG 2016 - Nürnberg - 16. November 2016 Microservices mit Vert.x und der Oracle SOA Suite

Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

Gemeinsam mehr erreichen.

DOAG 2016 - Nürnberg - 16. November 2016

Microservices mit Vert.x und der Oracle SOA Suite

Page 2: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

2

Vernetzen mit esentri

Über Mich

Dominik Galler

[email protected]

@dominik_galler

#java8

#microservices

#angular

Page 3: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

Agenda

> Microservice-Architektur> Microservices mit Vert.x> Demo> Vergleich SOA & MSA> Microservices mit der SOA Suite> SOA Suite und Vert.x

Page 4: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

4

Microservice-Architektur

Page 5: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

5

Technische Charakteristika

> Microservice-Architektur

Unabhängige Bereitstellung

Eigener Prozessraum Unabhängig Skalierbar

Shared Nothing

Verteilt

Page 6: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

6

Architektonische Charakteristika

> Microservice-Architektur

Ressourcenhoheit

Single-Responsibility-Prinzip Smart Endpoints & Dump Pipes

API Schnittstellen

Polyglott

Page 7: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

7

Organisatorische Charakteristika

> Microservice-Architektur

Kleine Teams

Weniger Kommunikationsaufwand Geringere Belastung

Teams betreiben Service

Orientiert an fachlichen Funktionen

Page 8: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

8

Klassische Sicht

> Microservice-Architektur

UI-Schicht

Fachkonzeptschicht

Datenhaltungsschicht

Page 9: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

9

Auswirkungen auf die Architektur

> Microservice-Architektur

Page 10: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

10

Vertikale Teilung

> Microservice-Architektur

Grafisches Interface

Geschäftsprozesse

Datenhaltung

Page 11: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

11

Vertikale Teilung

> Microservice-Architektur

Interface-Integrationsschicht

Geschäftsprozesse

(Datenintegrationsschicht)

Suche Produktdaten Kundendaten

Page 12: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

12

Auswirkungen auf die Organisation

> Gesetz von ConwayAny organization that designs a system (defined more broadly here than just information systems) will inevitably produce a design whose structure is a copy of the organization's communication structure – Melvin E. Conway (1968)

> Microservice-Architektur

Page 13: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

13

Auswirkungen auf die Organisation

> Microservice-Architektur

UI-Entwickler

Entwickler (Middleware)

DBAs

Page 14: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

14

Auswirkungen auf die Organisation

> Microservice-Architektur

Page 15: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

15

Auswirkungen auf das System

> Microservice-Architektur

Netzwerkstruktur

Integration

Verteilt

Automatisierung

Page 16: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

16

Microservice Architektur

> Microservice-Architektur

Flexibilität

Kürzere Time-To-Market

Skalierbarkeit

Agile Entwicklungsmethoden

VerteilteDatenverarbeitung

KomplexeresTesten&Deployment

KomplexitätaufNetzwerkebene

Reorganistation derUnternehmensstruktur

Page 17: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

17

Microservices mit Vert.x

Page 18: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

18

Was ist Vert.x

> Microservices mit Vert.x

Läuft in der JVM

EventgetriebenPolyglott

Inspiriert von Node.js *

*https://dzone.com/articles/get-know-hash-joins-mariadb

Page 19: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

19

Was bietet Vert.x

> Microservices mit Vert.x

Vert.x

Polyglott Leichtgewichtig Eventgetrieben Flexibel Modular

Page 20: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

20

Unterstützte Sprachen

> Microservices mit Vert.x

Page 21: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

21

Smart Endpoints –Verticle

> Microservices mit Vert.x

Verticle

Bereitstellungselement

Enthält Logik

Emittiert und Konsumiert Events

Automatisches Deployment

Page 22: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

22

Dump Pipe – Eventbus

> Microservices mit Vert.x

Eventbus

ÜberträgtEvents

Publish &Point2Point

ÜberträgtEvents

Wenig/keineLogik

Page 23: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

23

Das Rahmenwerk

> Microservices mit Vert.x

Page 24: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

24

Demo

Page 25: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

25

Demo Code auf GitHub!

> Demo

> https://github.com/dominikgaller/doag-demo-javascript

> https://github.com/dominikgaller/doag-demo-java-one> https://github.com/dominikgaller/doag-demo-java-two

Page 26: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

26

Vergleich SOA & MSA

Page 27: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

27

Microservice-Architektur

> Vergleich SOA und MSA

Geschäftsandwendung

Microservice 2Microservice 1

Einfache Integrationsschicht (vgl. Vert.x Eventbus)

Page 28: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

28

Serviceorientierte Architektur

> Vergleich SOA & MSA

Web-Service

Komplexe Geschäftsanwendung

Komplexe Geschäftsanwendung

Datenbank

Komplexe Integrationsschicht

Page 29: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

29

Microservices mit der SOA Suite

Page 30: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

30

SOA Suite - Service-Componente-Architecture-Project (SCA)

> Microservices mit der SOA Suite

SCA

BPEL-Prozesse

Mediatoren

Business-Rules

Page 31: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

31

Microservices mit SCA

> Microservices mit der SOA Suite

SCA

UI

Logik

Isolierte Datenbank

REST

Page 32: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

32

Microservices mit der SOA Suite

> Microservices mit der SOA Suite

Dump Pipes Mediatoren

Skalierbarkeit

Partitionierung

Work-Manager-Gruppe

AutomatisierungMaven-Support

(ab12c)

Mehr Informationen? à http://www.esentri.com/wp-content/uploads/2015/09/04-2015-doag-soug-news-web.pdf

Page 33: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

33

SOA Suite und Vert.x

Page 34: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

34

Kombination von SOA Suite und Vert.x

> SOA Suite und Vert.x

SOA Suite

SCA REST

Vert.x

Verticle(Microservice)

REST

Page 35: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

35

Kombination von Vert.x und SOA Suite

> SOA Suite und Vert.x

Vorteile beider Welten

Einfache Integration von MSA in Legacy-Umfeld

Höhere Flexibilität

Monitoring durch SOA Suite

doppelter Technologiestack

Zusätzlich erhöhte Komplexität

Doppelte Integrationsschicht

Page 36: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

36

Vielen Dank für Ihre Aufmerksamkeit!

Page 37: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

37

In Eigener Sache

> Vortrag von Carsten Wiesbaum (esentri AG)Microservices - ein Vorgehensmodell zur SoftwareentwicklungDonnerstag, 14:00 – 14:30 Uhr, Hongkong

> Sie treffen mich im Anschluss am Stand der

Page 38: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

38

Ansprechpartner

Prof. Dr. Thomas Schuster

Professur für Softwaretechnik und Datenbanken

Pforzheim University

[email protected]

https://www.hs-pforzheim.de/profile/thomasschuster

Dominik Galler

esentri AG

[email protected]

www.esentri.de

Page 39: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

39

"Mit unserer Begeisterung für führende Technologien vernetzen wir Systeme, Prozesse und Menschen.“

> Vorstellung der esentri AG

EINFACH MEHR> BEGEISTERUNG

Q&A

Page 40: Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) > Microservice-Architektur. 13 Auswirkungen auf die Organisation > Microservice-Architektur UI-Entwickler

40

Quellen

> [11] How Do Committees Invent?, Melvin E. Conway, Copyright 1968, F. D. Thompson Publications, Inc. Reprinted by permission of Datamation magazine, where it appeared April, 1968, URL: http://www.melconway.com/research/committees.html (Abgerufen 23.09.2016)

> [7,8,12,13] Microservices a definition of this new architectural term, Fowler und Lewis, URL: http://martinfowler.com/articles/microservices.html (Abgerufen: 23.09.2016)

> [14, 25, 26, 28 - 30] Microservices – Architekturmuster oder nur alter Wein in neuen Schläuchen, Dr. Thomas Schuster und Carsten Wiesbaum, esentri AG, DOAG SOUG Nr. 4, August 2015, ISSN 2364-7191, www.doag.org, http://www.esentri.com/wp-content/uploads/2015/09/04-2015-doag-soug-news-web.pdf

> [16] Vert.x Logo URL: https://upload.wikimedia.org/wikipedia/commons/thumb/c/c4/Vert.x_Logo.svg/2000px-Vert.x_Logo.svg.png

> [27] Oracle SOA Suite Logo URL: http://www.esentri.com/wp-content/uploads/2014/10/oracle_soasuite_logo.jpg

> http://www.esentri.com/blog/2015/12/02/aenderungen-vert-x-3-im-vergleich-zu-vert-x-2/> http://www.esentri.com/blog/2015/04/27/vert-x/> http://www.esentri.com/blog/2016/04/04/vert-x-backend/