first commit
هذا الالتزام موجود في:
63
q4-scalability/calculations.md
Normal file
63
q4-scalability/calculations.md
Normal file
@@ -0,0 +1,63 @@
|
||||
# Scalability Calculations
|
||||
|
||||
## Requirement
|
||||
|
||||
Design an architecture capable of handling **15,000 requests per second**.
|
||||
|
||||
---
|
||||
|
||||
## Container Capacity
|
||||
|
||||
Each container can handle:
|
||||
|
||||
- **500 requests/second**
|
||||
|
||||
---
|
||||
|
||||
## Required Containers
|
||||
|
||||
Without safety margin:
|
||||
|
||||
15000 / 500 = 30 containers
|
||||
|
||||
---
|
||||
|
||||
## Safety Margin
|
||||
|
||||
A 30% safety margin is required.
|
||||
|
||||
30 × 1.3 = 39 containers
|
||||
|
||||
---
|
||||
|
||||
## Final Result
|
||||
|
||||
**39 containers** are required to safely handle the expected traffic.
|
||||
|
||||
---
|
||||
|
||||
# Cold Start Strategy
|
||||
|
||||
To reduce startup latency for new containers:
|
||||
|
||||
- Keep 2–3 warm containers ready.
|
||||
- Use lightweight Docker images.
|
||||
- Configure health checks before routing traffic.
|
||||
- Trigger auto-scaling at 70% CPU or 80% memory utilization.
|
||||
|
||||
---
|
||||
|
||||
# Using Ghaymah Block Storage
|
||||
|
||||
Ghaymah Block Storage is used for stateful workloads where data must persist even if containers are recreated.
|
||||
|
||||
Typical use cases include:
|
||||
|
||||
- PostgreSQL
|
||||
- MySQL
|
||||
- MongoDB
|
||||
- Application uploads
|
||||
- Persistent logs
|
||||
- Backup storage
|
||||
|
||||
Application containers remain stateless, while persistent data is stored on Block Storage.
|
||||
المرجع في مشكلة جديدة
حظر مستخدم