MicroServices notes
From Federal Burro of Information
Mastering Chaos - A Netflix Guide to Microservices - Notes
Evolutionary response
- Separation of concern: modularity and encapsulation
- Scalability: horizontal, and partitioning
- Virtualization and Elasticity - automation, and on demand capacity
Dependancy
Use cases:
Intra-Service Requests
can handle non ideal issues
- network issues
- back off
- handling failure.
- can protect against one service failing?
Hystrix
FIT - Fault Injection Testing
Graceful degradation - testing the removal of things, some less important, some more.
Client libraries
Bare bones , or client libraries?
Data persistance
CAP theorem - In the event of a network partition the trade off between consistency and availability.
Infrastructure
Scale Use Cases
Stateless
Stateful
Hybrid
caching layer is hybrid
consider VCache, a system for managing memcache (server) and spymemcached (client)
https://github.com/Netflix/EVCache
lessons:
separate real time from batch
Variance
Change
Dealing with incidents
Incident -> Resolution -> Review -> remediation -> Analysis -> Best practice -> Automation -> Adoption
Production Readiness Reviews
- Alerts
- Automated Canary Analysis
- Auto Scaling
- Chaos
- Consistent Naming
- ELB Config
- HealthChecks
- Immutable Machine Images
- Squeeze Testing - uwt is this ?
- Timeout, retries, fall back, circuit breaker
Reading
- Mastering Chaos - A Netflix Guide to Microservices
- https://www.youtube.com/watch?v=CZ3wIuvmHeM