الملفات
ghaymah-exam-sre-abdelrahman/q4-scalability
Abdelrahman-17 afd8d2cfff
فشلت بعض الفحوصات
Ghaymah CI/CD Pipeline / deploy-staging (push) Has been cancelled
Ghaymah CI/CD Pipeline / deploy-production (push) Has been cancelled
Ghaymah CI/CD Pipeline / build-and-push (push) Has been cancelled
Fix Markdown formatting and code block closure in Q4 README
2026-07-26 17:32:56 +03:00
..

Question 4: Scalability, Load Balancing & Block Storage Strategy

1. High-Scale System Architecture Diagram (15,000 req/s)

                                  [ Ghaymah DNS / CDN ]
                                            │
                                            ▼
                              [ Ghaymah Load Balancer (ALB) ]
                                            │
               ┌────────────────────────────┼────────────────────────────┐
               ▼                            ▼                            ▼
      [ Pod / Container 1 ]        [ Pod / Container 2 ]    ...  [ Pod / Container N ]
   (Stateless Application Layer - Auto-scaled via HPA: Min 40 / Max 60 Pods)
               │                            │                            │
               └────────────────────────────┼────────────────────────────┘
                                            │
                     ┌──────────────────────┴──────────────────────┐
                     ▼                                             ▼
       [ Ghaymah In-Memory Cache ]                    [ Ghaymah Stateful Workloads ]
      (Redis Cluster for Sessions)                 (StatefulSet + Ghaymah Block Storage)
2. Container Sizing & Capacity Calculations
Target Throughput: 15,000 req/s

Max Throughput per Container: 500 req/s

Base Container Requirement:

Base Containers = 15,000 / 500 = 30 containers

Safety Margin Buffer (30% Overhead):

Option A (Adding 30% extra capacity): 30 x 1.30 = 39 containers

Option B (Targeting 70% max utilization per container): 15,000 / 350 = 42.85 -> 43 containers

Deployment Recommendation: Set initial HPA baseline to 40 replicas with auto-scaling limits between 39 to 60 containers.

3. Cold Start Mitigation Strategy for New Containers
To eliminate container startup latency during burst auto-scaling events:

Lightweight Container Images: Use minimal multi-stage Docker builds (Alpine/Distroless) to reduce pull and extraction time.

Kubernetes Readiness & Startup Probes: Separate heavy initialization from readiness checks so traffic is routed only when application memory is warm.

Pre-warmed Buffer Capacity: Configure HPA with a conservative scale-down stabilization window and preemptive predictive scaling.

Lazy Initialization: Defer non-critical background module loading until after the main web server accepts requests.

4. Ghaymah Block Storage for Stateful Workloads
Ghaymah Block Storage provides low-latency, high-IOPS persistent storage for stateful applications (Databases, Message Queues):

PersistentVolumeClaims (PVC): Dynamically provisions dedicated block volumes attached directly to Kubernetes StatefulSet pods.

Data Consistency & Isolation: High-performance storage isolated per database instance (e.g., PostgreSQL / MongoDB data directories).

Snapshot & Disaster Recovery: Enables automated point-in-time volume snapshots without service interruption.