Availability defines the proportion of time that the system is functional and working.
Common causes:
- System errors
- Infrastructure issues
- Malicious attacks
- Frequent updates
- Unexpected or access load
- DOS (Denial of Service) attack
- Inappropriate use of resources
Points to be considered:
- Circuit Breaker Pattern
- Health Check Endpoints and Monitoring
- Queue-based Load Leveling
- Throttling Pattern
- Retry and Timeout Pattern
- Bulkhead Pattern
- Schedular Agent Supervisor Pattern
- Compensating Transaction Pattern