WooCommerce / Performance
Problèmes de performance WooCommerce
Les boutiques WooCommerce ralentissent d’une manière qu’un site vitrine ne connaît pas : panier, checkout et compte ne peuvent pas être mis en cache, les commandes font grossir la base chaque jour, et les tâches de fond disputent aux clients les mêmes processus PHP.
Réponse courte
Mesurez d’abord le temps de réponse serveur des requêtes lentes, pas les scores de vitesse. Trouvez ensuite où passe ce temps : requêtes en base, exécution PHP, appels HTTP externes ou attente d’un processus PHP libre. Panier, checkout et compte ne peuvent pas être mis en cache : leur vitesse dépend de PHP, de la base de données, du cache d’objets et des tâches de fond.
Ressources techniques
Guides sur la performance
- WooCommerce / Performance Problèmes d’Action Scheduler dans WooCommerce Actions planifiées en retard, échouées et bloquées : comment la file fonctionne, pourquoi elle s’arrête et comment la réparer sans perdre de travail en attente.
- WooCommerce / Performance Checkout WooCommerce lent : quoi vérifier Séparez le temps PHP, les requêtes en base de données et les appels d’API externes avant de changer de cache ou d’hébergement.
Problèmes précis
Où passe le temps dans WooCommerce
Checkout lent
Appels de livraison, de taxes ou d’ERP dans la requête du checkout ; hooks lourds à la création de commande.
Requêtes lentes
Tables de métadonnées énormes, recherches sans index, options chargées automatiquement surdimensionnées.
Files Action Scheduler
Des milliers d’actions en attente ou en échec : webhooks, e-mails, synchronisations.
Problèmes de WP-Cron
Des tâches qui ne s’exécutent qu’à la visite d’un internaute, ou toutes en même temps sous le trafic.
Processus PHP saturés
Erreurs 502/504 quand des requêtes lentes occupent tous les processus.
Cache d’objets absent ou inefficace
Pas de Redis ni de Memcached, ou un cache vidé trop souvent pour servir.
Mesurer avant d’optimiser
Les outils de vitesse mesurent le front-end d’une visite anonyme sur une page en cache. La lenteur de WooCommerce se trouve souvent ailleurs : dans les requêtes non mises en cache (panier, checkout, compte, administration), dans des requêtes en base qui grossissent avec le nombre de commandes, et dans le travail de fond. Commencez par le temps de réponse serveur (TTFB) des requêtes lentes, puis décomposez-le.
| Signal | Goulot d’étranglement probable |
|---|---|
| Lent seulement sur panier, checkout et compte | Travail PHP et base de données par requête, appels externes |
| Écran des commandes lent | Requêtes de commandes, comptages, extensions qui ajoutent des colonnes |
| 502/504 sous charge | Processus PHP-FPM épuisés par des requêtes lentes |
| E-mails, webhooks ou synchronisations en retard | File Action Scheduler engorgée, WP-Cron qui ne tourne pas |
| Tout est lent après une croissance | Taille de la base, options chargées automatiquement, absence de cache d’objets |
Ce qui aide généralement, et ce qui n’aide pas
Sortir les appels externes de la requête du checkout, exécuter le travail lourd via Action Scheduler, ajouter un cache d’objets persistant, nettoyer les sessions expirées et les options surdimensionnées, et dimensionner PHP-FPM pour le trafic réel font généralement une différence mesurable. Ajouter une deuxième extension de cache de pages, « optimiser » la base avec des outils qui suppriment des données qu’on ne comprend pas, ou monter en gamme d’hébergement sans mesurer, généralement pas.
Questions fréquentes
Pourquoi le checkout WooCommerce est-il lent ?
Le checkout ne peut pas être mis en cache : chaque requête exécute PHP et des requêtes en base. Les coupables habituels sont les appels synchrones à des services de livraison, de taxes ou d’ERP, les hooks sur mesure lourds à la création de commande et l’absence de cache d’objets.
Qu’est-ce qu’Action Scheduler ?
La file de tâches de fond utilisée par WooCommerce pour les webhooks, les e-mails, les renouvellements d’abonnements et de nombreuses extensions. Elle est visible dans Outils → Actions planifiées. Un nombre croissant d’actions en attente ou en échec est un signal d’alerte précoce.
Faut-il désactiver WP-Cron ?
Sur les boutiques actives, remplacer le WP-Cron déclenché par les visites par une vraie tâche cron serveur exécutée chaque minute est généralement plus fiable. Le désactiver sans le remplacer arrête tout le travail planifié.
$ décrivez le problème
Un problème avec WooCommerce ?Demandez un diagnostic.
Dites-nous ce qui ne fonctionne pas, ce qui a changé récemment et l'impact sur votre activité. Nous examinons chaque demande et vous recommandons la marche à suivre.
N'envoyez jamais de mots de passe, de clés API ni de données de carte via le formulaire.