Learning Objectives:
- Learn best practices for building containerized microservices
- Learn about the twelve-factor app pattern and how to implement it using containers on AWS
- Learn how to use AWS Fargate to build and run containerized microservices
47. Fast Launch
Minimize the startup time of processes:
- Scale up faster in response to spikes
- Ability to move processes to another host as needed
- Replace crashed processes faster
61. Admin / management processes are
inevitable:
- Migrate database
- Repair some broken data
- Once a week move database
records older than X to cold
storage
- Every day email a report to this
person
65. Each component is a 12 factor application.
Fast Launch
Dependencies Configuration Port BindingCodebase
ConcurrentGraceful stop Log stream
Stateless
81. Example: User Signup
Signup API
HTTP
User Metadata
Service
Password
Service
Email Verification
Service
Friend Discovery
Service
Asynchronous
Broadcast
86. Automate the provisioning of the
servers that host microservice
containers:
Terraform, Ansible,
Amazon CloudFormation
Automate the placement of
containerized service processes onto
hosts:
Amazon Elastic Container Service,
Kubernetes, Docker Swarm
87. Developers Version Control Repository
Test & Deployment
Manager
Image Build Service
Infrastructure Provisioning
Container Scheduling &
Orchestration
Container Image Repository