Here are some cloud design patterns that you should know as a senior engineer:
15. Retry Pattern:
Automatically retry failed operations to improve the chances of success.
14. Cache-Aside pattern:
Loading data into a cache on-demand to improve data access times and reduce server load.
13. Blue-Green Deployment pattern:
Deploying a new version of an application alongside the old one for easy rollback in case of issues.
12. Ambassador pattern:
Proxy managing communication between microservices.
11. Backends for Frontends pattern:
Specialized backend services for different user interfaces (frontends).
10. Bulkhead pattern:
Isolating components to prevent cascading failures in a system.
9. Circuit Breaker pattern:
Limiting requests to prevent system overload during a failure or downtime.
8. CQRS pattern:
Separating read and write operations for improved system scalability.
7. Event Sourcing pattern:
Capturing and storing every state-changing event for data reconstruction.
6. Materialized View pattern:
Precomputing and storing query results for faster data retrieval.
5. Publisher-Subscriber pattern:
Communication pattern where senders notify many receivers.
4. Rate Limiting pattern:
Restricting the rate of incoming requests to a system.
3. Saga pattern:
Coordinating a series of transactions to maintain data consistency.
2. Sidecar pattern:
Independent service extends the functionality of a main application.
1. Throttling pattern:
Controlling the rate of processing to prevent resource exhaustion.
Build reliable and scalable applications by studying proven cloud design patterns.
What would you add to this list?
PS - Join 57,001+ like-minded software engineers learning system design:
—-
♻ If you liked this note, restack it to help others find it.