Tests de charge sur Laravel Cloud : 17 000 requêtes/s et autoscaling en action
Quand une PME envisage de migrer son application vers une infrastructure cloud, l'une des premières questions posées est souvent : « Est-ce que ça va tenir sous charge ? ». C'est une préoccupation légitime. Promettre de la scalabilité sur le papier, c'est une chose. Avoir des chiffres concrets issus de tests réels, c'en est une autre.
Laravel a récemment publié un article de benchmark approfondi, réalisé par l'un de ses Solutions Engineers, qui a soumis une application Laravel 12 hébergée sur Laravel Cloud à un test de charge sérieux avec l'outil Grafana Cloud k6. Les résultats sont parlants : 17 000 requêtes par seconde soutenues, avec autoscaling automatique face à 20 000 utilisateurs virtuels simultanés. Voici ce qu'il faut retenir de cette expérience, et pourquoi cela intéresse directement les équipes techniques des PME.
Un scénario de test réaliste, pas un cas d'école
L'un des écueils classiques des benchmarks est de tester un endpoint trivial — une route /health qui retourne 200 OK — et d'en tirer des conclusions sur la capacité globale de la plateforme. Ce n'est pas l'approche retenue ici.
L'ingénieur a construit un endpoint spécifiquement conçu pour simuler des patterns de trafic réalistes, sans pour autant introduire de base de données dès le premier test (afin d'isoler les performances de la plateforme elle-même). L'objectif était clair : mesurer ce que Laravel Cloud peut absorber à travers la pile middleware complète, dans des conditions proches d'une application de production.
Le scénario incluait notamment :
- 20 000 utilisateurs virtuels actifs simultanément
- Une durée de test d'une heure continue
- 15 % des requêtes maintenant des connexions ouvertes pendant 33 secondes chacune — une simulation de connexions longues, typiques de certains usages métier
- L'autoscaling activé par défaut sur Laravel Cloud
Ce type de configuration est représentatif d'une application SaaS ou e-commerce en période de pic : montée en charge rapide, connexions persistantes, et besoin d'une infrastructure qui s'adapte sans intervention manuelle.
Les résultats : ce que l'autoscaling a réellement absorbé
Les chiffres obtenus sont les suivants :
- 17 000 requêtes par seconde en régime soutenu
- Environ 1 million de requêtes par minute traitées à travers le middleware stack complet
- Aucune dégradation notable malgré les connexions longues maintenues en parallèle
Ce qui est particulièrement intéressant du point de vue technique, c'est le comportement de l'autoscaling. Laravel Cloud a augmenté sa capacité de façon transparente au fur et à mesure que la charge montait, sans nécessiter de configuration manuelle ou d'intervention de l'opérateur. C'est précisément ce que recherchent les équipes techniques des PME : une infrastructure qui réagit au besoin réel, et non à une capacité figée sur-provisionnée ou sous-provisionnée.
Pour les équipes habituées à gérer des serveurs dédiés ou des configurations VPS, cette capacité d'adaptation automatique représente un changement de paradigme important. On passe d'une logique de « prévoir le pire » à une logique de « payer et scaler selon l'usage réel ».
Ce que cela signifie concrètement pour une PME avec Symfony ou Laravel
Chez MulerTech, nous accompagnons des PME dans le développement et l'hébergement d'applications PHP, principalement avec Symfony et Laravel. La question de la tenue en charge revient régulièrement, notamment dans les contextes suivants :
- Lancement d'une nouvelle fonctionnalité avec anticipation d'un pic de trafic
- Campagnes marketing générant des afflux soudains sur une application e-commerce
- Applications B2B avec des SLA stricts en termes de disponibilité et de temps de réponse
Le benchmark publié par Laravel apporte plusieurs enseignements transposables :
1. Tester avant de subir. Utiliser k6 (ou des alternatives comme Locust ou Apache JMeter) en amont d'une mise en production ou d'un événement prévisible est une pratique saine. Cela permet d'identifier les goulots d'étranglement — souvent côté base de données ou services tiers — avant qu'ils n'impactent les utilisateurs réels.
2. Isoler les couches pour mieux diagnostiquer. La démarche adoptée dans ce test — isoler d'abord la plateforme sans base de données — est méthodologiquement solide. Elle permet de savoir si le problème vient de l'infrastructure, du framework, ou de la logique applicative.
3. L'autoscaling n'est pas magique, mais il est efficace. Laravel Cloud a démontré sa capacité à encaisser une montée en charge brutale. Cela reste cependant conditionné à une architecture applicative qui le permet : pas de sessions en mémoire locale, pas de fichiers temporaires critiques, etc.
Conclusion : la performance, un argument technique et commercial
Ce benchmark, réalisé dans des conditions sérieuses et documenté avec transparence, est une ressource utile pour tout développeur ou décideur technique cherchant à évaluer Laravel Cloud. Il ne s'agit pas d'un chiffre marketing, mais d'un résultat obtenu avec un outil open source reconnu (k6), sur un scénario réaliste.
Pour les PME qui construisent ou font évoluer leurs applications PHP, la leçon est simple : la scalabilité ne s'improvise pas, elle se teste. Et les outils pour le faire sont accessibles, même sans une équipe DevOps dédiée.
Si vous souhaitez mettre en place une stratégie de tests de charge sur votre application Symfony ou Laravel — que ce soit sur Laravel Cloud, Forge, ou une autre infrastructure — n'hésitez pas à nous contacter. C'est exactement le type d'accompagnement que nous proposons chez MulerTech.
Source originale : K6 Load Testing on Laravel Cloud: 17,000 Requests per Second and Autoscaling Under Pressure — Laravel Blog