Cloud-Native Java Microservices with Microprofile

Cloud-Native Java Microservices with Microprofile

Cloud-native Java microservices with MicroProfile 1 Good morning! Guten Morgen! 2 Setting Context • Building Cloud Native Microservices • A Cloud Native App Server • A Better JVM for Cloud • Time to Code! 3 Building Microservices 4 Why are you here? “Be like NetFlix” -- ¯\_()_/¯ ? 5 Why are you here? • Benefits of Microservices o Scalability o Independent Deploy-ability o Agile o DevOps o etc 6 Transformation 7 Cloud Native? • 12 Factor Apps o Benefits o Concerns o Complications 8 Microservices? • Secure, fault tolerant, configurable, monitorable, etc o Benefits o Concerns o Complications 9 Transformation = Culture! • Tools & Practices • Processes & Procedures • Remember the Agile Manifesto? :) 10 An Evolution 11 12 How MicroProfile Helps You • Industry standard, vendor agonostic • Best practice patterns & solutions • Multi-vendor support 13 Eclipse MicroProfile Open Tracing Health Metrics 1.1 1.1 Check 1.0 JWT Fault Open API 1.0 Propagation Config 1.3 Tolerance 1.1 1.1 Rest Client 1.1 CDI 2.0 JSON-P 1.1 JSON-B 1.0 JAX-RS 2.1 microprofile.io 14 A Cloud Native App Server 15 openliberty.io 16 Design Goals • Efficient • Simple to use • Consistency • Just enough Application Server • Very good for virtualized environments • End of migration • Agile Ready 17 8 18 A Better JVM For Cloud 19 Cloud Costs • In The Cloud… More Resources = More $$$ • Small Footprint & Faster Start-up = Less $$$ • More Throughput = Less $$$ • OpenJDK with Eclipse OpenJ9 – perfect for cloud 20 Adopt Eclipse OpenJ9 Startup time is 30% faster with OpenJ9 –Xshareclasses -Xquickstart Footprint is 60% smaller with OpenJ9 Hotspot OpenJ9 OpenJ9 -Xshareclasses - Hotspot OpenJ9 OpenJ9 -Xshareclasses - Xquickstart Xquickstart Hotspot OpenJ9 OpenJ9 -Xshareclasses -Xquickstart Hotspot OpenJ9 OpenJ9 -Xshareclasses -Xquickstart Achieve peak throughput 70% faster with OpenJ9 OpenJDK9 with HotSpot OpenJDK9 with OpenJ9 OpenJDK9 with OpenJ9 w/AOT -Xtune:virtualized Throughput (transactions/sec) 0 200 400 600 800 1000 1200 1400 1600 Time (sec) http://www.eclipse.org/openj9 https://adoptopenjdk.net/?variant=openjdk8-openj9 21 Summary • MicroProfile - Java APIs for cloud-native applications o Produce and consume REST services o Handle faults, security, configuration, APIs o Monitor health, metrics and trace request flows • Open Liberty - Java platform for cloud-native applications o Open Source, Simple, Lightweight, Fast o Supports latest MicroProfile and Java EE API o Flexible package to suit your Microservices • Eclopse OpenJ9 Liberty – Java virtual machine for OpenJDK o Smallest memory footprint, fastest startup & highest throughput 22 Time to Code! 23 MicroProfile Guides 24 Useful links • The tutorial - https://github.com/OpenLiberty/tutorial-microprofile • Home - https://microprofile.io/ • Eclipse Home - https://eclipse.org/microprofile • Forum - https://groups.google.com/forum/#!forum/microprofile • Guides - https://openliberty.io/guides/?search=MicroProfile • Java - http://www.eclipse.org/openj9/ 25 Thank You! & Enjoy the lab! https://github.com/OpenLiberty/tutorial-microprofile 26.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    26 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us