Files
gesthub/docs/05_annexe_A2_estimation_charge.md
2026-08-21 09:12:02 +02:00

1.2 KiB
Raw Permalink Blame History

Annexe A2 — Estimation de charge

4 scénarios d'usage

Scénario Utilisateurs simultanés Workers Gunicorn RAM recommandée vCPU
Développement local 25 1 (serveur Flask dev) 512 Mo 1
Usage promo ydays 1030 4 (formule 2×2+1≈5, arrondi à 4 threads×2) 1 Go 2
Déploiement département 50100 9 (2×4+1) 2 Go 4
Pic événementiel 100200 917 selon CPU disponible 4 Go 48

Formule appliquée

workers = 2 × CPU + 1 (formule standard Gunicorn). Configuration retenue en production : 4 workers, classe gthread, 2 threads par worker (web/Dockerfile : gunicorn --workers=4 --worker-class=gthread --threads=2 --bind=0.0.0.0:5000 app:app), dimensionnée pour le scénario « usage promo ydays », le plus représentatif de l'usage réel actuel du projet.

Disponibilité

restart: unless-stopped sur tous les services Docker (redémarrage automatique en cas de crash), healthcheck MariaDB avec 6 tentatives espacées de 10 s avant que Flask ne tente de se connecter (depends_on: condition: service_healthy dans docker-compose.yml), TLS/HTTP2 géré automatiquement par Caddy (renouvellement Let's Encrypt sans intervention).