Performance du serveur
La performance du serveur impacte directement la vitesse et la réactivité de votre application WCPOS. Ce guide vous aide à surveiller, diagnostiquer et optimiser la performance du serveur en utilisant les métriques intégrées et les techniques de dépannage.
Comprendre les métriques du serveur
WCPOS collecte automatiquement des métriques de performance du serveur à chaque opération de récupération de données (produits, commandes, clients, etc.). Vous pouvez visualiser ces métriques dans l'écran Logs.
Métriques typiques du serveur
{
"total": "24692",
"execution_time": "76.64 ms",
"server_load": "[15.20605469,16.16357422,16.76806641]"
}
Détails :
total- Nombre d'enregistrements traités (24 692 identifiants de produit)execution_time- Temps nécessaire pour compléter l'opération (76,64 millisecondes)server_load- Charges moyennes du serveur pour 1, 5 et 15 minutes
Charge du serveur expliquée
La charge du serveur représente la charge système moyenne sur différentes périodes :
- Première valeur - Moyenne sur 1 minute (15,21)
- Deuxième valeur - Moyenne sur 5 minutes (16,16)
- Troisième valeur - Moyenne sur 15 minutes (16,77)
Interprétation de la charge
Les valeurs de charge du serveur peuvent être trompeuses et doivent être interprétées avec précaution :
Les moyennes de charge du serveur ne sont pas toujours corrélées directement à la performance. Un serveur avec des valeurs de charge élevées (15+) peut encore être très réactif s'il dispose de suffisamment de ressources et est bien optimisé. Concentrez-vous sur les temps d'exécution plutôt que sur les valeurs de charge seules.
Directives générales :
- Charge par rapport aux cœurs de CPU - Une charge de 8,0 sur un serveur à 8 cœurs signifie une utilisation complète
- Soutenue vs temporaire - Les pics brefs sont normaux, une charge élevée soutenue peut indiquer des problèmes
- La performance est plus importante - Un serveur réactif avec une charge élevée est meilleur qu'un serveur lent avec une faible charge
À surveiller :
- Temps d'exécution augmentant au fil du temps
- Charge augmentant de manière constante sans explication
- Charge élevée ET temps d'exécution lents ensemble
Références de performance
Directives sur le temps d'exécution
| Opération | Bon | Acceptable | Mauvais | Critique |
|---|---|---|---|---|
| Récupération de produit | < 100ms | 100-500ms | 500ms-2s | > 2s |
| Création de commande | < 200ms | 200-800ms | 800ms-3s | > 3s |
Considérations sur le nombre d'enregistrements
Le temps d'exécution doit évoluer raisonnablement avec le nombre d'enregistrements :
// Bons exemples d'adaptation
{"total": "100", "execution_time": "15.2 ms"} // 0.15ms par enregistrement
{"total": "1000", "execution_time": "89.4 ms"} // 0.09ms par enregistrement
{"total": "10000", "execution_time": "234.1 ms"} // 0.02ms par enregistrement
// Mauvais exemples d'adaptation
{"total": "100", "execution_time": "500.0 ms"} // 5.0ms par enregistrement
{"total": "1000", "execution_time": "8000.0 ms"} // 8.0ms par enregistrement
Diagnostiquer les problèmes de performance
Étape 1 : Surveiller les logs
- Ouvrez Logs depuis le tiroir de navigation
- Effectuez l'opération lente (synchroniser les produits, créer une commande, etc.)
- Recherchez l'entrée de log correspondante
- Développez le contexte pour voir les métriques
Étape 2 : Analyser les métriques
Temps d'exécution élevé + Charge du serveur élevée = Problème de ressources du serveur
{
"total": "5000",
"execution_time": "3500.0 ms",
"server_load": "[12.45, 11.23, 10.87]"
}
Solution : Augmenter les ressources du serveur ou optimiser la configuration du serveur
Temps d'exécution élevé + Charge du serveur normale = Problème de plugin/base de données
{
"total": "1000",
"execution_time": "2800.0 ms",
"server_load": "[1.23, 1.45, 1.67]"
}
Solution : Identifier les plugins lents ou optimiser les requêtes de base de données
Temps d'exécution normal + Charge du serveur élevée = Surcharge générale du serveur
{
"total": "2000",
"execution_time": "150.0 ms",
"server_load": "[8.90, 9.12, 8.45]"
}
Solution : Réduire la charge du serveur due à d'autres processus ou augmenter les ressources
Problèmes de performance courants
1. Ressources serveur insuffisantes
Symptômes :
- Charge serveur constamment élevée (> 4.0 sur la plupart des serveurs)
- Temps d'exécution longs pour toutes les opérations
- Temps d'attente fréquents
Solutions :
- Améliorer le CPU - Plus de cœurs gèrent mieux les requêtes simultanées
- Augmenter la RAM - Réduit l'I/O du disque et améliore la mise en cache
- Utiliser un stockage SSD - Améliore considérablement la performance de la base de données
- Optimiser les paramètres PHP - Augmenter memory_limit, max_execution_time
2. Requêtes de base de données lentes
Symptômes :
- Temps d'exécution élevés avec une charge serveur normale
- Récupération de produits/commandes particulièrement lente
- Codes d'erreur liés à la base de données dans les logs
Solutions :
- Activer WooCommerce HPOS - L'amélioration de performance de base de données la plus significative
- Utiliser la mise en cache des objets - Redis ou Memcached si disponible chez votre hébergeur
- Garder WordPress à jour - Les mises à jour du noyau incluent souvent des optimisations de la base de données
- Limiter les révisions de publication - Ajouter
define('WP_POST_REVISIONS', 3);à wp-config.php
3. Interférences des plugins
Symptômes :
- Dégradation soudaine de la performance après les mises à jour de plugins
- Opérations spécifiques beaucoup plus lentes que d'autres
- Temps d'exécution élevés avec une charge serveur normale
Dépannage :
- Tester sur staging - Désactiver tous les plugins sauf WooCommerce et WCPOS
- Mesurer la référence - Enregistrer les temps d'exécution avec un minimum de plugins
- Activer progressivement - Ajouter les plugins un par un pour identifier les coupables
- Vérifier les hooks de plugins - Rechercher des plugins qui s'accrochent aux actions de WooCommerce
Plugins problématiques courants :
- Plugins SEO lourds lors des opérations sur les produits
- Systèmes de gestion d'inventaire complexes
- Plugins d'analyse/suivi en temps réel
- Plugins personnalisés mal codés
4. Configuration de WordPress/WooCommerce
Symptômes :
- Performance incohérente
- Erreurs liées à la mémoire dans les logs
- Tableau de bord administrateur lent
Liste de vérification d'optimisation :
- Version PHP - Utiliser PHP 8.0+ pour une meilleure performance
- WooCommerce HPOS - Activer le stockage des commandes à haute performance (voir ci-dessous)
- Mise en cache WordPress - Activer la mise en cache des objets si disponible
- Paramètres WooCommerce - Optimiser les tailles d'images des produits
Stockage de commandes à haute performance WooCommerce (HPOS)
HPOS est l'une des améliorations de performance les plus significatives que vous puissiez réaliser pour WooCommerce. Il stocke les commandes dans des tables de base de données personnalisées au lieu de la table des publications de WordPress, améliorant considérablement la performance pour les magasins avec de nombreuses commandes.
Avantages :
- Requêtes de commande plus rapides - Les commandes sont stockées dans une structure de base de données optimisée
- Charge de base de données réduite - Sépare les commandes des articles/pages
- Meilleure évolutivité - Gère efficacement un grand nombre de commandes
- Amélioration de la performance admin - Écrans de gestion des commandes plus rapides
Comment activer :
- Allez dans
WooCommerce > Settings > Advanced > Features - Activez "Stockage de commandes haute performance"
- Suivez le processus de migration
En savoir plus :
Meilleures pratiques de surveillance du serveur
1. Vérifications régulières de performance
- Revue hebdomadaire - Vérifiez les logs pour des tendances de performance
- Mesures de référence - Enregistrer les temps d'exécution normaux
- Surveillance pendant les périodes de pointe - Surveiller durant les périodes de fort trafic
2. Définir des alertes de performance
Surveillez ces signes d'avertissement :
- Temps d'exécution > 1000ms de manière constante
- Charge du serveur > 5.0 pendant des périodes prolongées
- Erreurs de timeout fréquentes dans les logs
3. Planification de la capacité
Suivre les tendances de croissance :
- Croissance du nombre d'enregistrements - Produits, commandes, clients
- Dégradation des performances - Comment le temps d'exécution évolue
- Utilisation des ressources - CPU, mémoire, utilisation du disque
Stratégies d'optimisation du serveur
1. Meilleures pratiques WordPress/WooCommerce
Activer HPOS :
- L'amélioration de performance la plus impactante pour WooCommerce
- Voir la section HPOS ci-dessus pour les détails
Configuration PHP (consultez votre hébergeur) :
memory_limit = 512M
max_execution_time = 300
max_input_vars = 3000
Configuration WordPress :
// In wp-config.php - limit post revisions
define('WP_POST_REVISIONS', 3);
// Enable WordPress debug logging if needed
define('WP_DEBUG_LOG', true);
2. Optimisations au niveau de l'hébergement
Mise en cache des objets :
- Demandez à votre hébergeur la disponibilité de Redis ou Memcached
- De nombreux hébergeurs WordPress gérés fournissent cela automatiquement
Version PHP :
- Utilisez PHP 8.0+ pour des améliorations de performance significatives
- La plupart des hébergeurs permettent un changement facile de version PHP
Ressources serveur :
- Assurez-vous d'avoir suffisamment de RAM (minimum 1 Go, de préférence 2 Go ou plus)
- Un stockage SSD offre des performances de base de données bien meilleures que les disques traditionnels
Quand demander de l'aide
Contactez votre fournisseur d'hébergement ou un développeur WordPress si :
- La charge du serveur est constamment > 8.0 malgré les efforts d'optimisation
- Les temps d'exécution > 5000ms pour des opérations simples
- Erreurs de mémoire apparaissant fréquemment dans les logs
- Requêtes de base de données prenant > 2 secondes de manière constante
Fournissez-leur :
- Métriques serveur à partir de vos logs
- Liste des plugins actifs
- Spécifications du serveur (CPU, RAM, type de stockage)
- Versions WordPress et WooCommerce
Documentation connexe
- Logs - Comment accéder et interpréter les métriques serveur
- Performance de paiement - Optimiser le traitement des paiements
- Codes d'erreur - Comprendre les codes d'erreur liés à la performance
- Dépannage - Guides de dépannage généraux