الملفات
ghaymah-exam-mohamed-wael-sre/q4-scalability/calculations.md
2026-07-28 15:54:03 +03:00

67 أسطر
1.4 KiB
Markdown
خام اللوم التاريخ

هذا الملف يحتوي على أحرف Unicode غامضة

هذا الملف يحتوي على أحرف Unicode قد تُخلط مع أحرف أخرى. إذا كنت تعتقد أن هذا مقصود، يمكنك تجاهل هذا التحذير بأمان. استخدم زر الهروب للكشف عنها.

# Scalability Design
## 1. Architecture
The application is deployed on a Kubernetes cluster hosted on Ghaymah Cloud.
Incoming traffic is distributed through a Ghaymah Load Balancer across multiple application containers. The application stores persistent data using Ghaymah Block Storage, which is mounted as a Persistent Volume.
---
## 2. Required Number of Containers
### Given
- Incoming traffic = **15,000 requests/second**
- One container handles = **500 requests/second**
- Safety margin = **30%**
### Step 1
Base number of containers
15000 / 500 = 30 containers
### Step 2
Add 30% capacity
30 × 1.3 = 39 containers
### Final Answer
**39 containers**
---
## 3. Cold Start Strategy
To reduce startup latency for newly created containers:
- Keep a minimum number of warm replicas running.
- Use Kubernetes readiness probes before routing traffic.
- Pull container images in advance on cluster nodes.
- Use Horizontal Pod Autoscaler (HPA) to scale before traffic reaches peak levels.
- Deploy applications with rolling updates to avoid downtime.
---
## 4. Using Ghaymah Block Storage
Ghaymah Block Storage provides persistent storage for stateful workloads.
Typical use cases include:
- Databases
- PostgreSQL
- MySQL
- Redis persistence
- Application uploaded files
- Persistent logs
Benefits:
- Data persists even if a container is recreated.
- Storage can be attached to new containers.
- Reliable and durable storage for production workloads.