mageekblog - Mot-clé - doctrineLe blog personnel de Frédéric Hardy. Au menu, PHP, agilité, FreeBSD, cuisine et photographies.2021-12-02T08:20:54+01:00Frédéric Hardyurn:md5:26874ca5b8cd4cac8d08b0e68e64f63aDotclearPHP appuie sur l'accélérateur tout en consommant moinsurn:md5:06db8d0f1282bd0e1f3b51984f68240b2010-05-03T17:11:00+02:002010-05-05T19:58:27+02:00mageekguyPHP Xdoctrineinternals@performancePHPPHP XPHP6PHPUnit<p><a href="http://www.php.net">PHP</a>, à l'instar des derniers modèles de voitures, suit la mode et devient écologique.</p>
<p>Il se permet même de faire mieux que ces derniers, puisque contrairement à eux, il ne sacrifie pas la roue de secours pour peser moins lourd sur la balance et ainsi moins consommer.</p>
<p>Il se permet même, en réalité, de faire beaucoup mieux que ces derniers, puisque contrairement à eux, il ne sacrifie ni sa puissance ni sa rapidité sur l'autel de l'écologie, bien au contraire.</p>
<p>En effet, les optimisations ajoutées dans le <a href="http://svn.php.net/viewvc/php/php-src/trunk/">trunk</a> récemment commencent à être testées sur du code en production, et les résultats sont assez spectaculaires.</p> <p><a href="http://www.whitewashing.de">Benjamin Eberlei</a>, l'un des développeurs de <a href="http://www.doctrine-project.org/">Doctrine 2</a>, a ainsi envoyé sur <a href="http://news.php.net/php.internals/48148">internals@</a> le résultat de l'exécution de la suite de tests de <a href="http://www.doctrine-project.org/">Doctrine 2</a> par la version de PHP actuellement dans le <a href="http://svn.php.net/viewvc/php/php-src/trunk/">trunk</a>.</p>
<p>Ces tests font massivement appel à de la manipulation de chaînes de caractères et de tableaux, et utilise peu, voir pas du tout, du code provenant d'extensions à <a href="http://www.php.net">PHP</a>.</p>
<p>Ils consistent à transformer 10 000 enregistrements
issue d'une table en base de données en un objet Doctrine, la base de
données étant complétement simulée afin de ne pas parasiter les
résultats et prendre uniquement en compte les performances de <a href="http://www.php.net/">PHP</a>.</p>
<p>Ils sont donc très adaptés pour quantifier le gain apporté par les efforts d'optimisation de <a href="http://news.php.net/php.internals/47911">Dimitry Stogov</a> sur le moteur de <a href="http://www.php.net/">PHP</a>, puisqu'ils ont notamment portés sur la gestion des chaînes de caractères et de la mémoire vive.</p>
<p>Il en ressort que les tests s'exécutent entre 30 et 40% plus rapidement avec la version du <a href="http://svn.php.net/viewvc/php/php-src/trunk/">trunk</a> de <a href="http://www.php.net/">PHP</a> qu'avec <a href="http://svn.php.net/viewvc/php/php-src/branches/PHP_5_3/">PHP 5.3.3</a>, la prochaine mise à jour mineure de la branche actuelle.</p>
<p>Cerise sur le gâteau, la consommation de mémoire vive a baissé de pratiquement 10 Mo, ce qui revient à dire que la version du <a href="http://svn.php.net/viewvc/php/php-src/trunk/">trunk</a> demande 25% de RAM en moins pour effectuer le même travail, ce qui confirme les résultats que <a href="http://sebastian-bergmann.de/">Sébastien Bergmann</a>, le développeur de <a href="http://www.phpunit.de/">PHPUnit</a>, avait déjà <a href="http://news.php.net/php.internals/47612">précédemment divulgué</a>.</p>
<p>Il avait en effet constaté une baisse de la consommation de mémoire vive de l'ordre de 15% lors de l'exécution de tests unitaires de <a href="http://www.phpunit.de/">PHPUnit</a>.</p>
<p>La prochaine version majeure de <a href="http://www.php.net/">PHP</a> sera donc, c'est maintenant un fait établit, non seulement plus rapide, mais aussi plus efficace au niveau de la gestion de sa mémoire, ce qui permettra d'exécuter plus de code plus efficacement, et donc à infrastructure technique identique, d'augmenter les performances globales et ainsi pouvoir traiter, par exemple, plus de requêtes <abbr title="Hyper Text Transport Protocol">HTTP</abbr> sur un serveur uniquement en mettant à jour <a href="http://www.php.net/">PHP</a>.</p>http://blog.mageekbox.net/?post/2010/05/03/PHP-appuie-sur-l-acc%C3%A9l%C3%A9rateur-tout-en-consommant-moins#comment-formhttp://blog.mageekbox.net/?feed/atom/comments/118