Infrastructure

La Stack de Production

Le jour du lancement, HN et Reddit envoient 50K visiteurs. Le serveur ne doit pas tomber. Voici comment on tient.

État actuel du serveur

6
Cœurs CPU
7.7 Go
RAM (94% utilisée)
4 Go
Swap utilisé
60+
Sites en production
⚠️
Saturé au quotidien
Pas prêt pour 50K visiteurs

Architecture cible — Jour J

┌─────────────────────────────────────────────────────────────┐
│                  CLOUDFLARE CDN (gratuit)                       │
│  ▸ Cache automatique des assets statiques                   │
│  ▸ DDoS protection · Rate limiting                          │
│  ▸ SSL/TLS automatique                                      │
│  ▸ 99.9% uptime SLA                                         │
└────────────┬────────────────────────────────────────────────┘
             │
    ┌────────┴────────┐
    │                 │
    ▼                 ▼
┌───────────────┐  ┌──────────────────────────────┐
│ VPS LANCEMENT │  │ SERVEUR ACTUEL (odata)         │
│ (Hetzner 6€/mo)│  │ (backup, cockpit existant) │
│                │  │                              │
│ ▸ Pages landing│  │ ▸ agents.08.ma (cockpit)    │
│ ▸ Manifesto    │  │ ▸ API (si nécessaire)       │
│ ▸ Documentation│  │ ▸ Services existants        │
│ ▸ Tous les .html│ │                              │
│                │  │                              │
│ Nginx · Certbot│  │ Protégé par Cloudflare      │
│ CPU: 2 vCPU    │  │ Rate limit: 10 req/s        │
│ RAM: 4 Go      │  │ (le cockpit n'est pas       │
│ SSD: 40 Go     │  │  critique le jour J)        │
└───────────────┘  └──────────────────────────────┘

→ Les pages statiques (tout test.08.ma) sont sur le VPS
→ Le cockpit live (agents.08.ma) reste sur odata
→ Cloudflare absorbe 90% du trafic (cache)
→ Coût total : 6€/mois + Cloudflare gratuit

Trois niveaux de protection

Minimum
Cloudflare devant odata
0€/mois
Cache Cloudflare sur test.08.ma. Le serveur reste saturé mais Cloudflare absorbe le cache-hit. Risque : les pages non-cachées (API, cockpit) tombent.
Overkill
VPS + Backup + CDN pro
30€/mois
VPS 4 vCPU + serveur odata + Cloudflare Pro (20$). WAF, load balancing, image optimization. Pour quand on aura 500K visiteurs/mois.

Checklist avant lancement

Activer Cloudflare
DNS de test.08.ma → Cloudflare. Cache tout sauf /api/*.
Commander VPS Hetzner
CX22 à 6€/mois. 5 minutes de setup. Debian 12.
Déployer les pages statiques
rsync test.08.ma → VPS. Nginx + certbot.
Configurer rate limiting
Cloudflare : 100 req/s par IP. Nginx : 50 req/s.
Page statique de fallback
Si cockpit down → page "Trop de monde, revenez".
Test de charge
wrk -c 100 -t 4 https://test.08.ma. Vérifier latence.