Microservices mit Vert.x und der - doag.org · – Melvin E. Conway (1968) >...

Preview:

Citation preview

Gemeinsam mehr erreichen.

DOAG 2016 - Nürnberg - 16. November 2016

Microservices mit Vert.x und der Oracle SOA Suite

2

Vernetzen mit esentri

Über Mich

Dominik Galler

Consultantdominik.galler@esentri.com

@dominik_galler

#java8

#microservices

#angular

Agenda

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

4

Microservice-Architektur

5

Technische Charakteristika

> Microservice-Architektur

Unabhängige Bereitstellung

Eigener Prozessraum Unabhängig Skalierbar

Shared Nothing

Verteilt

6

Architektonische Charakteristika

> Microservice-Architektur

Ressourcenhoheit

Single-Responsibility-Prinzip Smart Endpoints & Dump Pipes

API Schnittstellen

Polyglott

7

Organisatorische Charakteristika

> Microservice-Architektur

Kleine Teams

Weniger Kommunikationsaufwand Geringere Belastung

Teams betreiben Service

Orientiert an fachlichen Funktionen

8

Klassische Sicht

> Microservice-Architektur

UI-Schicht

Fachkonzeptschicht

Datenhaltungsschicht

9

Auswirkungen auf die Architektur

> Microservice-Architektur

10

Vertikale Teilung

> Microservice-Architektur

Grafisches Interface

Geschäftsprozesse

Datenhaltung

11

Vertikale Teilung

> Microservice-Architektur

Interface-Integrationsschicht

Geschäftsprozesse

(Datenintegrationsschicht)

Suche Produktdaten Kundendaten

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

13

Auswirkungen auf die Organisation

> Microservice-Architektur

UI-Entwickler

Entwickler (Middleware)

DBAs

14

Auswirkungen auf die Organisation

> Microservice-Architektur

15

Auswirkungen auf das System

> Microservice-Architektur

Netzwerkstruktur

Integration

Verteilt

Automatisierung

16

Microservice Architektur

> Microservice-Architektur

Flexibilität

Kürzere Time-To-Market

Skalierbarkeit

Agile Entwicklungsmethoden

VerteilteDatenverarbeitung

KomplexeresTesten&Deployment

KomplexitätaufNetzwerkebene

Reorganistation derUnternehmensstruktur

17

Microservices mit Vert.x

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

19

Was bietet Vert.x

> Microservices mit Vert.x

Vert.x

Polyglott Leichtgewichtig Eventgetrieben Flexibel Modular

20

Unterstützte Sprachen

> Microservices mit Vert.x

21

Smart Endpoints –Verticle

> Microservices mit Vert.x

Verticle

Bereitstellungselement

Enthält Logik

Emittiert und Konsumiert Events

Automatisches Deployment

22

Dump Pipe – Eventbus

> Microservices mit Vert.x

Eventbus

ÜberträgtEvents

Publish &Point2Point

ÜberträgtEvents

Wenig/keineLogik

23

Das Rahmenwerk

> Microservices mit Vert.x

24

Demo

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

26

Vergleich SOA & MSA

27

Microservice-Architektur

> Vergleich SOA und MSA

Geschäftsandwendung

Microservice 2Microservice 1

Einfache Integrationsschicht (vgl. Vert.x Eventbus)

28

Serviceorientierte Architektur

> Vergleich SOA & MSA

Web-Service

Komplexe Geschäftsanwendung

Komplexe Geschäftsanwendung

Datenbank

Komplexe Integrationsschicht

29

Microservices mit der SOA Suite

30

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

> Microservices mit der SOA Suite

SCA

BPEL-Prozesse

Mediatoren

Business-Rules

31

Microservices mit SCA

> Microservices mit der SOA Suite

SCA

UI

Logik

Isolierte Datenbank

REST

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

33

SOA Suite und Vert.x

34

Kombination von SOA Suite und Vert.x

> SOA Suite und Vert.x

SOA Suite

SCA REST

Vert.x

Verticle(Microservice)

REST

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

36

Vielen Dank für Ihre Aufmerksamkeit!

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

38

Ansprechpartner

Prof. Dr. Thomas Schuster

Professur für Softwaretechnik und Datenbanken

Pforzheim University

thomas.schuster@hs-pforzheim.de

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

Dominik Galler

esentri AG

dominik.galler@esentri.com

www.esentri.de

39

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

> Vorstellung der esentri AG

EINFACH MEHR> BEGEISTERUNG

Q&A

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/

Recommended