🌿 Scalability §
- Khả năng mở rộng linh hoạt dự theo yêu cầu của khách hàng. Hệ thống có khả năng thích nghi tốt với trạng thái của ứng dụng.
- Scalability có liên quan đến High Availability.
- Có 2 loại scalability:
- Vertical scalability
- Horizontal scalabilily
🍃 Vertical scalability §

- Mở rộng về phần cứng của instance để xử lý các yêu cầu nhanh và chính xác hơn.
- Vd t2.micro -> t2.large
- Vertical scalability rất thường được sử dụng với những hệ thống không phân tán, ví dụ như database.
- RDS, ElasticCache là những services có thể sử dụng để thực hiện scale vertically.
- Thường có giới hạn về khả năng scale vertically(hardware limit)
🍃 Horizontal scalability §

- Mở rộng về số lượng instances, số lượng hệ thống của ứng dụng để có thể đáp ứng được nhiều yêu cầu của người dùng hơn.
- Dành cho những hệ thống phân tán.
- Thường được xử dụng cho web applications / modern applications.
- Dễ dàng để scale horizontally với EC2 service.
🌿 High Availability §
- High Availability thường sẽ được hiểu như scale horizontally.
- HA là ứng dụng của chúng ta được chạy trên ít nhất 2 data centers(AZs) mục đích để hệ thống luôn sẵn sàng sử dụng ngay cả khi có sự cố ở một data center nào đó.