Performances improvements of eZ Publish 4.4

As in almost every new release, eZ Publish is announced to perform better than the previous release This was true when 4.0 was released and also for the version 4.1. And what about the new 4.4 ?

As I wrote earlier (in french), eZ Publish brings a new session system that only creates a session when it's needed. Now, it's also possible to configure the way sessions are stored, by default the file system is used instead of the database in the previous versions. In terms of performance, this new feature is promising and since my upgrades, I find the pages more responsive but it was only a feeling.

Today, I check the crawl graphs generated by Google Webmaster Tools. The following chart shows the download time of pages by Googlebot. I think the change is quite clear (the green line represents the date of the upgrade) :

The chart of Planet eZ Publish.fr is also interesting :

it's interesting because just after the upgrade, I discovered an issue with the static cache on this site so I disabled it and as we can see, the difference between the static cache setup and the classical setup is not that big on this site !

Obviously, those results are only valid on my sites. One thing to mention is that Googlebot doesn't support session, so before eZ Publish 4.4 each time the robot requested a page, a new session was created and thus a new entry in the ezsession table was added. For normal user, this behaviour is only true the first time he visits the site. then the new session system only avoids one SQL SELECT query.

Google mon ami :)

Pornstar, d'après AWStats, est le 10ème mot clef tapé dans les moteurs de recherche pour arriver ici. Déjà, 69 visites depuis le début du mois de septembre, c'est assez fort :)

Performances, performances, performances !

Performances ! c'est le mot qui revient régulièrement dans beaucoup d'articles que j'ai lus ci et là ces derniers temps. Petite revue de web :

Le plus visible est probablement le fiasco de l'article PHP Performance tips de Google. Tellement de mauvais conseils que les billets en réponse ont fusé sur le Planet PHP et Gwynne Raskind a répondu point par point dans le groupe Make the web faster. Étonnant de voir Google malmené comme ça.

Sur un tout autre sujet, Artisan Numérique publie un benchmark de PostgreSQL entre les versions 8.2 et 8.3 et ensuite avec quelques optimisations. Je suis loin d'être un spécialiste et un grand utilisateur de PostgreSQL mais c'est toujours intéressant surtout avec le flou régnant autour de MySQL depuis le rachat de Sun par Oracle.

La mort de Mickaël Jackson a visiblement donné un petit coup de chaud aux sites people comme l'explique Charles-Christian Croix. Le trafic a plus que doublé en quelques minutes ! Mais à mon avis le plus intéressant dans cette page n'est pas vraiment les chiffres mais plus la comparaison entre les reverse proxy Varnish et Squid dans un commentaire d'un point de vue administration système.

Enfin, ça n'aura échappé à personne s'intéressant un peu à PHP; après une longue gestation, PHP 5.3 est sorti. Cette version apporte son lot de nouveautés au niveau du langage plus ou moins intéressantes (beurk le goto et le séparateur de namespace) mais aussi des améliorations de performances. Dans le forum sur eZ.no, Björn Dieding rapporte un gain de 90% sur Windows avec eZ Publish + PHP 5.3 par rapport au même site tournant avec PHP 5.2 ! Łukasz Serwatka a réalisé le même benchmark sous Linux observant un gain de l'ordre de 20% !

Optimisation des images générées par eZ Publish

Google Page Speed (la presque copie conforme de YSlow) est sorti il y a quelques jours. Ces deux outils permettent de vérifier différents critères ayant un impact sur le temps de chargement ressenti par l'utilisateur. En utilisant Google Page Speed sur ma dernière création, Bioutifoul Photos, j'ai remarqué que les miniatures des photos générées par eZ PublishviaImageMagick n'étaient pas optimisées, en effet elles contiennent toutes les informations EXIF de l'image originale ce qui est rarement utile (a priori GD ne sait pas conserver les informations EXIF donc le problème ne se pose pas).

Pour remédier à cela, il est possible de configurer un filtre spécifique (par exemple nommé optimize) qui va rajouter l'option -strip à convert lors de la création des variations pour supprimer un maximum de choses dans l'image puis à rajouter ce filtre dans les filtres utilisés pour créer une variation donnée. Cette opération est faisable en écrivant les lignes suivantes dans settings/override/image.ini.append.php :

[ImageMagick]
IsEnabled=true
ExecutablePath=/usr/bin
Executable=convert
 
Filters[]=optimize=-strip
 
[mini]
Filters[]
Filters[]=geometry/scalewidthdownonly=200
Filters[]=optimize

Dans cet exemple, la seules les images générées en format mini seront optimisées. Une autre solution plus globale consiste à ajouter l'option -strip pour toutes les variations en utilisant le paramètre PreParameters dans le même fichier de configuration.

Dans les deux cas, pour que les images existantes soient régénérées, il faut lancer la commande suivante :

$ php bin/php/ezcache.php --clear-tag=image

Attention, sur un site avec beaucoup d'images et un peu d'audience, la régénération des variations peut être extrêmement gourmande en ressources.

Google Android vs iPhone

Vue chez Clochix, une bande dessinée compare les possibilités (ou plutôt la vision) de Google Android à celles de l'iPhone. hilarant, mais tellement vrai :-)

Tags : Amusant, Google, Humeurs

Flux RSS des billets

Flux RSS des billets

Rechercher sur pwet.fr

À retenir

Derniers commentaires

Archives

Nuage de tags

Bioutifoul photos

Quelques liens

Licence d'utilisation

Contenu sous Licence Creative Commons By-Sa

Sauf mentions spécifiques, les billets et les photos publiés sur ce site sont placés sous la licence Creative Commons by-sa.

Pour toute utilisation dépassant le cadre de cette licence, merci de me contacter par e-mail.