The correct answer is Decouple components because microservices architecture is fundamentally based on the principle of decoupling components.
Explanation:
- Decouple components means designing systems where individual components operate independently and communicate through well-defined interfaces
- This aligns perfectly with microservices architecture where each service is:
- Independently deployable
- Loosely coupled
- Focused on a single business capability
- Communicates via APIs
- The other options are also AWS Cloud design principles but don't specifically support microservices:
- Think parallel: Focuses on parallel processing and distributed computing
- Implement elasticity: Focuses on scaling resources up and down based on demand
- Stop guessing capacity: Focuses on right-sizing resources and avoiding over-provisioning
Microservices architecture inherently requires decoupled components to achieve the benefits of independent development, deployment, and scaling.