Production Ready Microservices

1 minute read

All information presented below is not original content, this is a summary of the content that was presented by Susan Fowler within the O’Reilly books:

Production Readiness Standards

  • Stability
  • Reliability
  • Scalability
  • Fault-tolerance
  • Catastrophe-preparedness
  • Performance
  • Monitoring
  • Documentation


Deeper Dive into the Standards

Stability

  • Stable development cycle
  • Stable development process
  • Stable introduction and deprecation procedures

Reliability

  • Reliable deployment process
  • Planning, mitigating, and protecting against the failures of dependencies
  • Reliable routing and discovery

Scalability

  • Well-defined quantitative and qualitative growth sales
  • Identification of resource bottlenecks and requirements
  • Careful and accurate capacity planning
  • Scalable handling of traffic
  • Scaling of dependencies
  • Scalable data storage

Fault-tolerance & Catastrophe-preparedness

  • Potential scenarios are identified and planned for
  • Single points of failure are identified and resolved
  • Microservice is tested for resiliency, thru code, load, and chaos testing
  • Traffic is managed carefully in prep for failure
  • Incident and outages are handled appropriately and productively

Performance

  • Appropriate service level agreements (SLAs) for availability
  • Proper task handling and processing
  • Efficient utilization of resources

Monitoring

  • Proper logging and tracing throughout the stack
  • Well-designed dashboard that are easy to understand and accurately reflect the health
  • Effective, actionable alerting accompanied by runbooks
  • Implementing and maintaining an on-call rotation

Documentation

  • Thorough, updated, and centralized documentation containing all info on a microservice
  • Organizational understanding at the developer, team, and ecosystem levels