lagom for java enterprises: from monolith to microservices made simple
TRANSCRIPT
![Page 1: Lagom for Java Enterprises: from Monolith to Microservices made simple](https://reader033.vdocuments.mx/reader033/viewer/2022051503/587148c11a28ab55588b6023/html5/thumbnails/1.jpg)
Lagom for Java Enterprises: from Monolith to Microservices made easy
by James Roper (@jroper)
![Page 2: Lagom for Java Enterprises: from Monolith to Microservices made simple](https://reader033.vdocuments.mx/reader033/viewer/2022051503/587148c11a28ab55588b6023/html5/thumbnails/2.jpg)
What is Lagom
● Reactive Microservices framework for the JVM
● Focus on right sized services
● Asynchronous IO and communication as first class
● Highly productive development environment
● Takes you through to production deployment
![Page 3: Lagom for Java Enterprises: from Monolith to Microservices made simple](https://reader033.vdocuments.mx/reader033/viewer/2022051503/587148c11a28ab55588b6023/html5/thumbnails/3.jpg)
https://flic.kr/p/NyPaZ
![Page 4: Lagom for Java Enterprises: from Monolith to Microservices made simple](https://reader033.vdocuments.mx/reader033/viewer/2022051503/587148c11a28ab55588b6023/html5/thumbnails/4.jpg)
Finding the �rst microservice
● Well defined boundaries
● Minimal dependencies
● Loosely coupled
![Page 5: Lagom for Java Enterprises: from Monolith to Microservices made simple](https://reader033.vdocuments.mx/reader033/viewer/2022051503/587148c11a28ab55588b6023/html5/thumbnails/5.jpg)
Monolith architecture
![Page 6: Lagom for Java Enterprises: from Monolith to Microservices made simple](https://reader033.vdocuments.mx/reader033/viewer/2022051503/587148c11a28ab55588b6023/html5/thumbnails/6.jpg)
Microservice architecture
![Page 7: Lagom for Java Enterprises: from Monolith to Microservices made simple](https://reader033.vdocuments.mx/reader033/viewer/2022051503/587148c11a28ab55588b6023/html5/thumbnails/7.jpg)
Code demo
![Page 8: Lagom for Java Enterprises: from Monolith to Microservices made simple](https://reader033.vdocuments.mx/reader033/viewer/2022051503/587148c11a28ab55588b6023/html5/thumbnails/8.jpg)
Consuming Lagom services
● Option 1 – manual REST client
● Option 2 – Lagom service client (coming soon!)
● Option 3 – Generated Swagger client (coming soon!)
![Page 9: Lagom for Java Enterprises: from Monolith to Microservices made simple](https://reader033.vdocuments.mx/reader033/viewer/2022051503/587148c11a28ab55588b6023/html5/thumbnails/9.jpg)
Consuming the monolith
● Implement a Lagom descriptor for it
![Page 10: Lagom for Java Enterprises: from Monolith to Microservices made simple](https://reader033.vdocuments.mx/reader033/viewer/2022051503/587148c11a28ab55588b6023/html5/thumbnails/10.jpg)
Consuming Lagom in Produc�on
● Option 1 – Manual configuration direct to service
● Option 2 – ConductR service gateway
● Option 3 – ConductR service locator
![Page 11: Lagom for Java Enterprises: from Monolith to Microservices made simple](https://reader033.vdocuments.mx/reader033/viewer/2022051503/587148c11a28ab55588b6023/html5/thumbnails/11.jpg)
Consuming the monolith in Produc�on
● Option 1 – Manual configuration (coming soon!)
● Option 2 – ConductR service locator (coming soon!)
● Option 3 – Custom Lagom service locator
![Page 12: Lagom for Java Enterprises: from Monolith to Microservices made simple](https://reader033.vdocuments.mx/reader033/viewer/2022051503/587148c11a28ab55588b6023/html5/thumbnails/12.jpg)
Summary
1. Identify simple services to extract
2. Implement Lagom Service
3. Implement monolith client from Lagom service
4. Define Lagom service interface for monolith services
![Page 13: Lagom for Java Enterprises: from Monolith to Microservices made simple](https://reader033.vdocuments.mx/reader033/viewer/2022051503/587148c11a28ab55588b6023/html5/thumbnails/13.jpg)
Next steps
● Download and try Lagom!
● lightbend.com/lagom
● Customized Lightbend Proof of Concept Program
● lightbend.com/company/contact
![Page 14: Lagom for Java Enterprises: from Monolith to Microservices made simple](https://reader033.vdocuments.mx/reader033/viewer/2022051503/587148c11a28ab55588b6023/html5/thumbnails/14.jpg)