Review of AWS Fault Isolation Boundaries
To design services that scale well, you need to understand all the levels of abstraction on which we design systems. It's also cool to understand how we view dependencies on these underlying layers in terms of fault tolerance. (resilience). In order to use this approach, you can look at AWS documentation . This document is quite fresh. (renewal 16 November 2022 ) And it contains many designs that would be useful in designing:
- infrastructure abstractions (Accessibility zones, regions, ...) Separation of control and data plane services - as their probability of failure is different The concept of static stability - when systems operate in static mode and continue to operate in normal mode without the need to make changes during failures or unavailability of dependencies
Next, the authors show how these things work on their services, which happens to be 3 species
- zonal
- regional
- global
In general, the document is interesting in the context of design principles, even if you are not actively using AWS:) Here you can read a more detailed analysis of the my blog.
#SystemDesign #DistributedSystems #SoftwareArchitecture #Architecture #Cloud #SRE #Engineering