1
Facing the Challenges of Microservice
Development in the Cloud
Sebastian Daschner
Lead Java Developer Advocate
Slide 2
Slide 2 text
2
Sebastian Daschner
• Lead Java Developer Advocate @ IBM
• Consultant, trainer, book author
• JCP Expert Group member & Jakarta EE Committer
• Java Champion
• Oracle Developer Champion (Alumni)
• JavaOne Rockstar speaker
Slide 3
Slide 3 text
3
3
Cloud-native microservices
Why should we care?
Slide 4
Slide 4 text
4
Java Enterprise today
●
Still widely used in enterprises
●
Known APIs & great developer experience
●
Missing parts in a cloud-native, microservice world
9
Java Enterprise: Options
●
Java EE 8 / Jakarta EE only
●
MicroProfile 2.0 only
●
Java EE plus MicroProfile additions
Slide 10
Slide 10 text
10
Java EE plus MicroProfile
●
Proven technology, known APIs
●
MicroProfile projects fills the gaps
●
E.g. Java EE plus MP Config, Fault Tolerance, Metrics,
OpenTracing
Slide 11
Slide 11 text
11
11
Example: Enterprise coffee
Slide 12
Slide 12 text
12
What else is missing?
●
Observability (technical, infrastructure)
●
Service discovery
●
Traffic routing
Slide 13
Slide 13 text
13
13
Kubernetes & Istio
Let’s go cloud native
Slide 14
Slide 14 text
14
Customizing the runtime
●
Only including the required standards & runtime features
●
Required?
●
Trade-off between time & material spent on either development or
runtime
●
Optimize the moving parts (deployment artifacts) first
Slide 15
Slide 15 text
15
Servers supporting MicroProfile
●
Open Liberty 18.0.0.3
●
Payara 5.184
●
Tom EE 8.0
●
Wildfly 14.0.1.Final
Slide 16
Slide 16 text
16
Key takeaways
●
Use known APIs
●
Think of MicroProfile as extensions for Java EE
●
Development model that fits your need on application side
●
Optimize deployment artifacts before runtime
Slide 17
Slide 17 text
17
Future: MicroProfile as Incubator?
●
Crafting vendor-independent soon-to-be standards
●
Providing what's missing from future Jakarta EE
●
Sharing design principles with Jakarta EE
●
Defining a reasonable process
Slide 18
Slide 18 text
18
18
Cloud native Java
What about startup times & resource consumption?
Slide 19
Slide 19 text
19
19
Eclipse OpenJ9
An alternative runtime?
Slide 20
Slide 20 text
20
OpenJ9
●
OSS under Eclipse Foundation
●
Performance optimizations (Start-up time, ramp-up, footprint)
●
Free usage & security updates
●
Commercial support (optional)
Slide 21
Slide 21 text
21
Thank You For Your Attention!
●
sebastian-daschner.com
●
@DaschnerS
●
Book: Architecting Modern Java EE Applications
●
https://github.com/sdaschner/coffee/tree/microservice-cloud-
webinar