Files
roadwave/docs/adr/004-cdn.md
2026-01-31 11:45:11 +01:00

1.8 KiB

ADR-004 : CDN

Statut : Accepté Date : 2025-01-25

Contexte

Distribution audio HLS à 10M d'utilisateurs, besoin de performance, coût maîtrisé, et souveraineté : pas de dépendance à un service commercial tiers.

Décision

NGINX auto-hébergé sur OVH comme cache HLS, avec OVH Object Storage en origin.

Alternatives considérées

Solution Coût MVP/mois Souveraineté Setup Dépendance
NGINX self-hosted ~14€ 100% FR 2h Aucune
CDN commercial externe ~1 000€ Slovénie 15 min Forte
OVHcloud CDN ~50-200€ 100% FR 1h Moyenne
Cloudflare 0-5 000€ US 5 min Forte
CloudFront ~9 750€ US (AWS) 1h Très forte

Justification

  • Souveraineté : 100% français (OVH), 100% contrôlé, zéro dépendance commerciale
  • Open-source : NGINX sous licence BSD, stack entièrement libre
  • Coût : ~14€/mois MVP (VPS inclus), scaling linéaire et prévisible
  • Performance : Cache multiplexing 1→1000 (1 Mbps origin → 1 Gbps clients)
  • Conformité RGPD : Données hébergées en France

Architecture

Clients
  ↓
NGINX Cache Proxy (OVH VPS Essential)
├─ Cache RAM disk (2GB)
├─ TTL .m3u8: 5s
└─ TTL .ts: 7 jours
  ↓
OVH Object Storage (origin)

Évolution prévue

  1. Phase 1 (0-20K users) : NGINX mono-région
  2. Phase 2 (20-100K users) : NGINX multi-région (Gravelines + Strasbourg) + GeoDNS
  3. Phase 3 (100K+) : Évaluation CDN managé européen si ROI justifié

Conséquences

  • Configuration NGINX avec proxy_cache_path et règles de TTL
  • RAM disk /mnt/ramdisk pour performance maximale
  • Monitoring bande passante et taux de cache hit
  • Sécurité : token authentication pour protéger les segments HLS