Basic Concepts
Scalability
Scalability describes the ability of a system to add or remove resources.
There are two types of scaling strategies:
- Vertical Scaling
- Horizontal Scaling

Availability
Availability is a measure of the time a system is operational and available to the users.
| Availability | Downtime per year | Downtime per month | Downtime per week |
|---|---|---|---|
| 90% | 36.5 days | 72 hours | 16.8 hours |
| 99% | 3.65 days | 7.2 hours | 1.68 hours |
| 99.9% | 8.76 hours | 43.2 minutes | 10.1 minutes |
| 99.99% | 52.6 minutes | 4.32 minutes | 1.01 minutes |
| 99.999% | 5.26 minutes | 25.9 seconds | 6.05 seconds |
Agility
Agility is the ability of a system to quickly adapt to changes.
Elasticity
Elasticity is the ability of a system to automatically and dynamically adjust resources based on the demand.
Fault Tolerance
Fault tolerance is the ability of a system to continue operating in the event of a failure.
Disaster Recovery
Disaster recovery is the ability of a system to recover from a catastrophic event.