Lagom for Java Enterprises: from Monolith to Microservices made easy
by James Roper (@jroper)
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
https://flic.kr/p/NyPaZ
Finding the �rst microservice
● Well defined boundaries
● Minimal dependencies
● Loosely coupled
Monolith architecture
Microservice architecture
Code demo
Consuming Lagom services
● Option 1 – manual REST client
● Option 2 – Lagom service client (coming soon!)
● Option 3 – Generated Swagger client (coming soon!)
Consuming the monolith
● Implement a Lagom descriptor for it
Consuming Lagom in Produc�on
● Option 1 – Manual configuration direct to service
● Option 2 – ConductR service gateway
● Option 3 – ConductR service locator
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
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
Next steps
● Download and try Lagom!
● lightbend.com/lagom
● Customized Lightbend Proof of Concept Program
● lightbend.com/company/contact