Vendredi 17 h : deploy « sans coupure » sur Clever Cloud. Le healthcheck répond 200 sur / même si l'API est en panne ; la migration PostgreSQL verrouille la table users ; les sessions Redis sont perdues au redémarrage. Résultat : cinq minutes de 502 — « acceptable » selon le développeur, inacceptable pour le contrat SLA.
Clever Cloud est un PaaS pensé pour déployer souvent — à condition de traiter le deploy comme projet d'architecture, pas comme un git push magique. La plateforme peut retirer une instance du routeur proprement ; elle ne corrige pas un healthcheck menteur ni une migration bloquante.
Les trois piliers du zero downtime
| Pilier | Action Clever Cloud | Erreur type |
|---|---|---|
| Healthcheck | Route /health profonde — DB, cache | 200 sur page statique |
| Compatibilité N/N+1 | API rétrocompatible une release | Breaking change + deploy unique |
| Migrations | Expand/contract, pas ALTER sync | Lock table en prod |
Configurez le healthcheck dans le dashboard ou via Clever Tools ; alignez timeout et période de grâce sur le temps de boot réel de votre application — JVM, OPcache, connexions pool.
Séquence de deploy recommandée
Commencez par une phase pre-deploy : migration expand — colonnes nullable, nouvelles tables. Déployez ensuite la nouvelle version ; les instances unhealthy restent hors rotation. Lancez un smoke test sur les endpoints critiques via URL preview Clever si disponible. Basculez le trafic progressivement ou via DNS en blue-green. Terminez par la migration contract après drain des anciennes instances.
Pour PHP, Node ou Java, intégrez le warmup — OPcache, JVM — dans le healthcheck profond.
Sessions, cache et fichiers
Les sessions doivent vivre dans Redis add-on Clever ou en JWT stateless — pas en mémoire locale instance. Les uploads locaux sont incompatibles avec le scaling horizontal : passez par un object storage externe. L'invalidation de cache doit être versionnée avant bascule du trafic.
Sans ces trois points, le scaling horizontal simule zero downtime mais perd l'état utilisateur — paniers vides, déconnexions, fichiers introuvables.
Le sommet : push sans health profond = roulette
C'est l'écart entre démo et production un vendredi soir.
Décider et avancer sans angle mort
Versionnez un healthcheck profond dans le dépôt, rédigez un runbook migrations expand/contract, testez un deploy hebdomadaire sur l'environnement staging Clever, et documentez une stratégie blue-green ou canary avec gestion des sessions. Consultez la fiche Clever Cloud et le comparateur si vous hésitez entre PaaS et VPS pour votre charge.
Questions fréquentes
Clever Cloud garantit-il zero downtime ?
Non — cela dépend du healthcheck, des migrations et de la compatibilité N/N+1 entre versions.
Quel rôle du healthcheck ?
Il route le trafic si OK. Mal configuré, il crée une fausse sécurité ou bloque les deploys.
Comment gérer les migrations base ?
Expand/contract : schéma compatible deux versions, puis cleanup. Évitez ALTER bloquant au switch.
Blue-green sur Clever Cloud ?
Deux environnements, bascule DNS/router, drain sessions et invalidation cache documentés.
Avant de promettre zero downtime, faites échouer un deploy en staging volontairement — le healthcheck dira la vérité ou non.
