Workshop on
Microservice & DevOps
Tahmeed Tarek
System Development Engineer
Amazon, UK
Localhost to Production
➔ Get a Domain
➔ Get a Server
➔ Manual Deployment
What happens after you
have built a webapp?
2
Problems with Scale
➔ Huge & tightly-coupled codebase
➔ Slower release cycles
➔ Lack of fault tolerance
Lots of Customers & ➔ Scaling restrictions
Feature Requests
3
Monolith to Microservices
➔ Communicate over a
network
➔ Autonomously
developed
➔ Independently
deployable
➔ Loosely coupled
Monolith to Microservices
Benefits of Microservices
Develop, Deploy, Fail & Scale Independently
Primary
Teams can be autonomous & services can be maintained independently
Easier to Maintain Technology flexibility
Secondary Services are easier to understand & Services can use technologies
maintain as the scope is specialised freely preventing lock-in
5
Reminiscing Monoliths
Simpler development,
deployment, debugging
6
Containerization
➔ Consistency in Environment
➔ No Platform Dependency
Packaging
Dependencies
7
Scaling
➔ Vertical vs Horizontal Scaling
➔ Load balancing
➔ Caching
Meeting higher user
demands & workloads
8
Orchestration
➔ Automated bin packing
➔ Progressive Upgrades & Rollbacks
➔ Self-healing
Maintaining ➔ Beyond scope - auto-scaling,
Services & Systems service discovery, load balancing
9
Inter-service Communication
➔ Asynchronous vs synchronous
➔ Resiliency (retry, circuit breaking)
➔ Beyond scope - api gateways,
proxies, distributed tracing,
Inter-service security
Communication
10
CI/CD Pipelines
➔ Checks in pipeline
➔ Efficient as no manual
intervention
➔ Examples - Github Actions, Azure
Safer & Efficient DevOps, internal tools
Release Cycles
11
DevOps
12
Thank you
13