I have spent some time working on a project, and built 8 micro services and 2 applications, and planned to carve out a few more. Deployment was carried out in a farm of 25 servers in production with a single click in less than 3 minutes.
This presentation is about the experiences with building a micro service based architecture - the good, the bad and the ugly.
- What are micro services?
- When/Why/How micro services?
- Why NOT micro services?
- Managing Continuous Integration and Continuous Delivery with micro services
- A few design principles that we followed and that worked for us
22. How do they communicate?
RESTful contracts
HTTP + JSON
23. Thumb Rules
1 top level resource (2 at most)
bounded contexts
focus on contracts
extract cross cutting concerns
avoid coupling
sophisticated logging and monitoring
41. Tradeoffs
benefit cost
small units of reuse/maintenance complex infrastructure
grow independently learning curve
scale independently network overhead
independent DB fragmented data