Qu’est-ce que Hibernation ?
Hibernation (mise en veille automatique) de Laravel Cloud est une ancienne fonctionnalité qui fait passer un environnement en veille lorsqu’aucune requête HTTP n’est reçue pendant une certaine durée. Sur le nouveau compute Flex, elle est remplacée par Scale to Zero, plus rapide. L’Hibernation Legacy Flex permet d’interrompre la facturation du compute pendant la veille, mais il faut généralement 5 à 20 secondes pour reprendre après réception d’une requête HTTP. Avec le nouveau Scale to Zero, le démarrage descend à moins de 500 ms, et même en veille, l’environnement redémarre automatiquement pour les tâches planifiées et le traitement des queues.Ce qui change avec Scale to Zero
Avec Scale to Zero sur le nouveau compute Flex, beaucoup des limitations de l’ancienne Hibernation sont levées.| Élément | Ancienne Hibernation | Nouveau Scale to Zero |
|---|---|---|
| Reprise sur requête HTTP | 5 à 20 s | Moins de 500 ms |
| Tâches planifiées | Ne tournent pas en veille | Démarrent automatiquement pour s’exécuter |
| Traitement des queues | Ne tournent pas en veille | Démarrent automatiquement. Managed Queues recommandé |
| Usage recommandé | Économies en environnement Flex historique | Configuration standard actuelle |
L’ancienne Hibernation avait pour défaut d’empêcher l’exécution des tâches planifiées et des queues pendant la veille. Scale to Zero résout ce problème, et surtout, les Managed Queues permettent aux traitements de queue de continuer sans risque même quand le cluster App est en sommeil.
Étapes d’activation de l’ancienne Hibernation
Ouvrir le App compute cluster
Depuis le tableau de bord infra canvas de l’environnement, cliquez sur le App compute cluster.
Limitations pendant la veille (ancienne Hibernation)
Lorsque l’Hibernation est activée et que l’environnement est en veille, les fonctionnalités suivantes ne fonctionnent pas.| Fonctionnalité | Comportement en veille |
|---|---|
| Traitement des requêtes HTTP | Suspendu (traité après la reprise) |
| Task Scheduler | Non exécuté |
| Queue Worker | Non exécuté |
| Processus d’arrière-plan personnalisés | Non exécutés |
Ces traitements reprennent automatiquement à la sortie de veille. En revanche, les jobs planifiés « qui auraient dû s’exécuter » pendant la veille ne sont pas rejoués rétroactivement.
- Seul le compute Flex peut être mis en veille. Il n’est pas possible d’activer Hibernation sur du compute Pro.
- La veille se fait au niveau de l’environnement. Si le cluster App se met en veille, tous les clusters Worker du même environnement se mettent en veille aussi.
Causes de réveils inutiles
Toute requête HTTP réveille automatiquement l’environnement, y compris des requêtes non désirées.- Bots et crawlers — moteurs de recherche, scanners de sécurité, etc. qui parcourent les pages automatiquement
- Aperçus de liens Slack ou Teams — les messageries accèdent à l’URL pour récupérer les miniatures
- Scans WordPress — scans automatiques qui accèdent à
/wp-adminetc. à la recherche d’un WordPress - Attaques ciblant les fichiers
.php— scans automatisés visant directement des fichiers PHP
*.laravel.cloud de Laravel Cloud reçoit l’en-tête X-Robots-Tag: noindex, nofollow pour empêcher son indexation, mais si le domaine est découvert d’une manière ou d’une autre, cela ne suffit pas. Les domaines personnalisés n’obtiennent pas cet en-tête noindex.
Empêcher les réveils inutiles avec Path Blocking
Path Blocking est une fonctionnalité qui bloque les requêtes vers certaines extensions ou chemins sans faire sortir l’environnement de veille. Elle empêche les réveils inutiles causés par les scans WordPress ou les attaques ciblant des fichiers PHP. Voici les extensions et chemins bloqués par défaut. Extensions bloquées :Le routage classique de Laravel n’utilise pas de requêtes avec extension
.php, donc les bloquer n’affecte pas le fonctionnement de l’application.Cas d’usage adaptés / inadaptés à l’ancienne Hibernation
Cas d'usage adaptés
- Environnements de staging / développement — pas besoin d’être en ligne en permanence, gros gain de coût
- Blog personnel / portfolio — trafic faible
- Applications de démo / test — reprise à la demande suffisante
- Outils internes à faible fréquence — usage limité dans le temps
Cas d'usage inadaptés
- Usage avec tâches planifiées —
schedule:runne s’exécute pas en veille - Jobs de queue périodiques — les queues sont aussi arrêtées en veille
- Production ne tolérant pas la latence de démarrage — reprise de 5 à 20 s
- Applications WebSocket — la connexion peut ne pas se maintenir et la veille peut être retardée
Sur le nouveau Scale to Zero, cette contrainte est allégée. Les tâches planifiées s’exécutent automatiquement en veille et, en utilisant Managed Queues, le traitement des queues n’est pas affecté par la mise en veille du cluster App.
Conclusion
L’Hibernation reste utile pour économiser sur Legacy Flex, mais Scale to Zero est aujourd’hui plus pratique.- Sur Legacy Flex : facturation uniquement quand l’environnement tourne. Mise en veille automatique après timeout.
- Reprise en 5 à 20 s pour l’ancienne Hibernation.
- Le nouveau Scale to Zero démarre en moins de 500 ms.
- Sur Scale to Zero, les tâches planifiées et Managed Queues fonctionnent même en veille.
- Path Blocking empêche les réveils inutiles causés par des bots.
- Compatible uniquement avec le compute Flex.
Pages liées
Planification
Configuration du Task Scheduler et comportement sur Laravel Cloud.
Queues
Configuration du Queue Worker et exploitation sur Laravel Cloud.
Vue d'ensemble Laravel Cloud
Managed Queues, Scale to Zero et les nouveaux plans tarifaires en un coup d’œil.