1
Continuous Delivery with Microservices
2
BlackRiver Publishing
● Online book store
● Started 3 years back
● Very successful startup
● Business, Organization & Competition are rapidly growing
● Huge codebase
3
Typical problems
4
Who is responsible for what?
User Accounts
Catalog
Orders
Recommendations
……….
5
Slow feature addition
CodeRepository ProductionQA
6
No Faster feedback
Observe
Orient
Decide
Act
7
Better fitting technology
User Accounts
Catalog
Orders
Recommendations
……….
Python
8
Performance problems
User Accounts
Catalog
Orders
Recommendations
……….
50%
20%
9
Cost ineffective scaling
User Accounts
Catalog
OrdersRecommendations
……….
User Accounts
Catalog
OrdersRecommendations
……….
User Accounts
Catalog
OrdersRecommendations
……….
User Accounts
Catalog
Orders
Recommendations……….
User Accounts
Catalog
Orders
Recommendations……….
User Accounts
Catalog
Orders
Recommendations……….
11
Extract out components
User Accounts
Catalog
Orders
Recommendations
……….
12
Extract out components
User Accounts
CatalogOrders
Recommendations
……….
13
Easy to scale
User Accounts
Catalog
Recommendations
……….
Recommendations
Orders
Orders
Orders
Orders
14
Easy to scale
User Accounts
CatalogRecommendations
……….
Recommendations
Orders
Orders
Orders
Orders
15
Easy to test
Orders
Unit tests
Integration tests
Contract tests
16
Decoupled Database
User Accounts
Catalog
Orders
Recommendations
……….
Database Database
HTTP API
17
Polyglot environment
Recommendations
Java
MySQL
18
Polyglot environment
Recommendations
Python
Cassandra
19
Faster feedback ???
Observe
Orient
Decide
Act
20
Smaller Independent Teams
Orders
Recommendations
21
Rapid deployments
Code Repository
Automated Tests
Manual Tests
Production
Business Decision
22
Microservices architecture composed of loosely coupled elements that have bounded
context.
23
Continuous Delivery is a software development discipline where you build software in such a way that the software
can be released to production at any time.
24
THANKS & QUESTIONSFor questions or suggestions:
Ernesto Medina [email protected]
Sri [email protected]