Leichtgewichtige Microservices mit Java EE
Expertenkreis Java, 10.12.2015, GEDOPLAN
Dirk Weil, GEDOPLAN GmbH
Dirk Weil
GEDOPLAN GmbH, Bielefeld
GEDOPLAN IT Consulting
Konzeption, Realisierung von IT-Lösungen
gedoplan-it-consulting.de
GEDOPLAN IT Training
Seminare in Berlin, Bielefeld, on-site
gedoplan-it-training.de
Java EE seit 1998
Vorträge, Veröffentlichungen
Leichtgewichtige Microservices mit Java EE 2
Traditionelle Full-Stack-Anwendungen
3Leichtgewichtige Microservices mit Java EE
Präsentation
Services
Persistenz
HTML, JS, CSS, ...
JSF, Vaadin, ...
REST, SOAP, ...
CDI, EJB, ...
JMS, ...
JPA, MyBatis, ...
Traditionelle Full-Stack-Anwendungen
4Leichtgewichtige Microservices mit Java EE
Präsentation
Services
Persistenz
A
Team A
B
Team B
Traditionelle Full-Stack-Anwendungen
Komponentenschnitt
 Abhängigkeiten
 Abstimmungsaufwand
Monolithisches Deployment
 (nur) gemeinsame Releases
 (nur) einheitliche Technologie
5Leichtgewichtige Microservices mit Java EE
Präsentation
Services
Persistenz
A
Team A
B
Team B
Microservices
6Leichtgewichtige Microservices mit Java EE
A
Team A
B
Team B
Links
REST, Remoting,
Messaging
Datenreplikation
Microservices
Komponentenschnitt ...
Unabhängiges Deployment möglich
 unabhängige Releasezyklen
 Continuous D*
Technologiemix möglich
Aber: Komplexität in Netz verschoben
 Service-Versionierung
 Kommunikationsaufwand
7Leichtgewichtige Microservices mit Java EE
A
Team A
B
Team B
Links
REST, Remoting,
Messaging
Datenreplikation
Microservices
Java EE bietet notwendige Bestandteile
Persistenz: JPA
Services: CDI, EJB
Web UI: JSF (+JavaScript, HTML5, …)
REST: JAX-RS
Basisimplementierung Java-EE-Server
kleine, schnelle Deployments
Trennung Anwendung/Admin (Konfiguration, Security, …)
8Leichtgewichtige Microservices mit Java EE
Microservices
Demo
muServOrder: Beer Order Service
muServStat: Beer Usage Statistics
beides Web-Anwendungen
Deployment auf WildFly 9
https://github.com/dirkweil/muServ
9Leichtgewichtige Microservices mit Java EE
Microservices
Häufig: Nur eine Anwendung pro Java-EE-Server
Server notwendig?
 kleine Deployments
 Separation of Concerns
Serverlose Alternative: WildFly Swarm
 noch Alpha-Stadium
10Leichtgewichtige Microservices mit Java EE
WildFly Swarm
WildFly embedded
diverse Maven-Dependencies verfügbar
Plugin baut Fat Jar ...-swarm.jar
11Leichtgewichtige Microservices mit Java EE
<dependency>
<groupId>org.wildfly.swarm</groupId>
<artifactId>wildfly-swarm-undertow</artifactId>
<version>${version.wildfly-swarm}</version>
</dependency>
<plugin>
<groupId>org.wildfly.swarm</groupId>
<artifactId>wildfly-swarm-plugin</artifactId>
<executions>
...
WildFly Swarm
Start
mvn wildfly-swarm:run
java –jar ...-swarm.jar
In IDE: org.wildfly.swarm.Swarm oder eigenes main
deployt Anwendung automatisch
Demo: Einfache Servlet-Anwendung
12Leichtgewichtige Microservices mit Java EE
More
http://www.gedoplan-it-training.de
Seminare in Berlin, Bielefeld, Inhouse
http://www.gedoplan-it-consulting.de
Reviews, Coaching, …
http://javaeeblog.wordpress.com/
http://expertenkreisjava.blogspot.de/
 dirk.weil@gedoplan.de
@dirkweil
Leichtgewichtige Microservices mit Java EE 13

Weitere ähnliche Inhalte

PPTX
Macit Kandemir, Flexible Datenbank-Anwendungen mit MongoDB
PDF
Infinispan / JBoss Data Grid - Schneller Zugriff auf große Datenmengen im Cl...
PDF
Speeding up Java Persistence
PDF
javaPersistenceInActionFeaturesJenseitsDesEntryLevels
PPTX
Apache camel
PPTX
Jpa queries
PDF
Java EE 7 - Enterprise-Anwendungen ohne Ballast
PDF
Java Batch – Der Standard für's Stapeln
Macit Kandemir, Flexible Datenbank-Anwendungen mit MongoDB
Infinispan / JBoss Data Grid - Schneller Zugriff auf große Datenmengen im Cl...
Speeding up Java Persistence
javaPersistenceInActionFeaturesJenseitsDesEntryLevels
Apache camel
Jpa queries
Java EE 7 - Enterprise-Anwendungen ohne Ballast
Java Batch – Der Standard für's Stapeln

Andere mochten auch (6)

PDF
WildFly als Plattform moderner Enterprise-Anwendungen
PPTX
Versionierung mit GIT
PDF
Speeding up Java Persistence
PDF
Java EE 7 - Enterprise-Anwendungen ohne Ballast
PDF
AngularJS
PPTX
Wie viel Client braucht das Web?JSF, Vaadin und AngularJS im Vergleich
WildFly als Plattform moderner Enterprise-Anwendungen
Versionierung mit GIT
Speeding up Java Persistence
Java EE 7 - Enterprise-Anwendungen ohne Ballast
AngularJS
Wie viel Client braucht das Web?JSF, Vaadin und AngularJS im Vergleich
Anzeige

Leichtgewichtige Microservices mit Java EE 7