web-dev-qa-db-fra.com

Le meilleur moyen de diagnostiquer quels plug-ins/thèmes utilisent le plus de mémoire?

Je viens de mettre à jour un de mes WP site web de 3.1.4 à 3.4.2 mais j’ai immédiatement reçu un

Erreur fatale: taille de mémoire autorisée de

message.

J'ai donc ajouté define ('WP_MEMORY_LIMIT', '128M'); wp-config.php, mais si j’ai à le faire avec tout mon WP site Web, j’estime que je manque de mémoire assez rapidement.

Comment vérifier la quantité de mémoire utilisée par un plugin ou un thème?

cordialement

ps: et pourquoi n'ai-je pas reçu le message quand j'ai utilisé la version 3.1.4? 3.4.2 utilise-t-il plus de mémoire?

3
alex

Il existe un très joli plugin appelé P3 (Plugin Performance Profiler) . Essaie!

Ce plugin crée un profil des performances des plugins de votre site WordPress en mesurant leur impact sur le temps de chargement de votre site. Souvent, les sites WordPress se chargent lentement à cause de plugins mal configurés ou parce qu’ils sont nombreux. En utilisant le plug-in P3, vous pouvez limiter tout ce qui peut causer de la lenteur sur votre site.

  • Ce plugin utilise l'élément canvas pour dessiner des graphiques et nécessite Firefox, Chrome, Opera, Safari ou IE9 ou une version ultérieure. Ce plugin ne fonctionnera pas dans IE8 ou inférieur.

Pour votre deuxième question, vous pouvez lire WordPress Benchmark: 3.0 vs 3.1 vs 3.2 vs 3.3 .
texte uniquement en miroir dans cache google

WordPress a maintenant 4 versions en ligne 3.x. Avec un taux d'adoption lent pour les deux versions précédentes, malgré la bonne version 3.2, le nouveau WordPress 3.3 parviendra-t-il à persuader les utilisateurs de mettre à niveau? Ce repère essayera au moins de donner une réponse partielle à cela.

4
realloc

avec des langages interprétés tels que php, chaque ligne ajoutée au code entraîne une consommation de mémoire plus importante. Il est donc trivial de prévoir plus de mémoire à chaque fonctionnalité ajoutée WP.

Vous ne spécifiez pas quand vous avez reçu ce message, et si vous utilisez un WP non anglais. Je pense que de nombreuses chaînes ont été ajoutées dans le cadre du système d’aide intégré, et si vous exécutez un WP traduit, vous chargez également leur traduction.

Si vous n'avez mis à niveau que le WP, il est peu probable que la faute soit liée à un thème ou à un plug-in. Il est difficile de mesurer la quantité de mémoire utilisée par chaque plugin et chaque thème, car la majeure partie de celle-ci est probablement allouée de manière dynamique et varie entre différentes pages front-end/admin du site. Par exemple, moins de mémoire sera consommée sur une seule page de publication que sur une page de catégorie car il y a simplement moins de données à traiter.

Si la mémoire pose problème et que vous pouvez modifier le serveur, vous devez installer apc ou un autre accélérateur php . Comme ils précompilent le code php en octet, cela prend moins de mémoire (et s’exécute plus rapidement).

MAIS .... je ne suis absolument pas sûr que vous allez rencontrer un problème si vous définissez WP_MEMORY_LIMIT sur tous vos sites. WP_MEMORY_LIMIT dit simplement à WP (et WP le communique à l'interpréteur php) que la consommation de mémoire maximale peut être de 128M, mais que WP do ' N'allouez pas autant de mémoire au démarrage, et sauf si quelque chose ne va pas avec vos plugins et votre thème, la plupart du temps, vous êtes bien en dessous.

Il est donc important de savoir quelle opération spécifique entraîne les utilisations élevées de la mémoire. Si ce n'est que dans admin alors ne vous inquiétez pas. Par exemple, un calcul très simpliste et inexact - si vous avez 512 Mo alloués à votre serveur, vous serez en mesure de gérer 4 demandes de page de mémoire maximum en même temps, mais quelle est la probabilité que 4 pages d’administrateur soient accédées en même temps (la même seconde exacte)? très proche de 0 pour la plupart des WP sites.

Et il est encore plus facile à faire: dans votre fichier php.ini, définissez memory_limit sur 128M. De cette façon, vous n'aurez plus à vous soucier de l'ajout de la définition WP_MEMORY_LIMIT pour chaque nouveau site que vous installez.

1
Mark Kaplun