par
toulou » 03 janv. 2014, 15:28
Bonjour,
Je suis en train de migrer mes sites vers de nouveaux serveurs plus performants.
Sur les nouveaux serveurs j'ai des problèmes de rapidité assez forte (certaines pages mettent deux fois plus de temps à charger).
Après investigation, ce n'est pas un problème de BD (les requêtes se font plus rapidement) mais un problème de php et notamment de temps d’exécution du foreach.
Avec un test simple:
<?php
$timestarthtml=microtime(true);
echo "time start=".$timestarthtml;
$cpt=100000;
foreach(range(0,$cpt) as $i) $test=$i;
$timeendhtml=microtime(true);
echo "time end =".$timeendhtml;
$timehtml=$timeendhtml-$timestarthtml;
echo "time exec=".$timehtml;
?>
Je fais tourner ce script sur les différents serveurs.
Sur les nouveaux serveurs le temps d’exécution est de 50 % à 100 % plus long ...
Pourtant, les CPUs sont plus rapides, 2* plus de mémoire ...
Je suis un peu perdu car je ne comprends pas ce problème.
La différence majeur de config entre les deux serveurs est la version php. Sur les anciens serveurs j'ai la version 5.2.17 et sur les nouveaux la version 5.4.4.
Avez vous déjà eu ce type de problème ? Avez vous une idée d'où cela peut venir ?
Merci!