Bonjour CentOS Francophone,
Je suis en train de préparer des RPMs pour php 5.3.0, et n'étant pas expert PHP ( et oui, mon coeur se tourne vers Perl ;-) ) je rencontre des différences entre cette version de PHP et la 5.2.10.
La grande différences est l'unification des SAPIs 'cgi' et 'cgi-fcgi'. La SAPI 'cgi' est maintenant aussi et toujours FastCGI ( plus besoins de construire des paquets 'php-cgi' et 'php-fcgi' ):
PHP cgi donne ceci (php 5.2.5): % echo '<?=php_sapi_name()."\n";' | /usr/bin/php-cgi -qn cgi
PHP fcgi donne ceci (php 5.2.5): % echo '<?=php_sapi_name()."\n";' | /usr/bin/php-fcgi -qn cgi-fcgi
* Maintenant depuis la version 5.3.XX:
PHP cgi donne ceci (php 5.3.0): % echo '<?=php_sapi_name()."\n";' | /usr/bin/php-cgi -qn cgi-fcgi
Mise à part cette modification, après préparation des patchs, modifications et tutti quanti, la taille des binaires du php-5.3.0 à extrêmement évoluée par rapport à celle de mon php 5.2.5, tout en gardant la même structure et choix de compilation:
PHP-5.2.5: ------------- php => 3128233 php-cgi => 3128233 php-fcgi => 3423897
PHP-5.3.0: ------------- php => 6416948 php-cgi => 6432883
Après avoir testé ce nouveau PHP avec lighttpd + mod_fastcgi, je ne vois pas de perte de performance, mais plutôt un gain.
* Voici la configuration utiliser avec lighttpd:
----lighttpd + mod_fastcgi----- fastcgi.server = ( ".php" => ( ( "socket" => socket_dir + "/php-fastcgi.0.socket", "bin-path" => "/usr/bin/php-fcgi", "broken-scriptfilename" => "enable" , "max-procs" => 2, "max-load-per-proc" => 10, "idle-timeout" => 20, )) ) ---------------------------------------
* L'utilitaire 'pmap' indique suivant les versions: PHP-5.2.5: total 16104K PHP-5.3.0: total 19424K
Voilas, pas plus..
Avez-vous des remarques, des conseilles....
Merci -- S e r g e
PS: ces RPMs ne sont pas pour CentOS, mais pour un 'compatible', en l'occurrence il s'agit de Caos Linux NSA http://www.caoslinux.org/
On Sat, 31 Oct 2009 16:09:52 +0100 S e r g e serge@srv0.ath.cx wrote:
Avez-vous des remarques, des conseilles....
Aucune puisque Caos utilise rpm5. Redhat et Centos utilisent rpm 4.x. Meme Fedora utilise rpm 4.x. rpm5 est un fork et pas une simple maj de RPM.
Maxime
Le Sunday 01 November 2009 12:19:07 Maxime Carron, vous avez écrit :
Salut Maxime,
En effet Caos Linux[1] utilise rpm5[2] verion 5.1.9, alors que CentOS reste pour le nomment avec rpm4 (la 4.4.X ?). D'ailleurs, le Team[3] RPM5 comprend presque toutes les distributions et biensûr aussi CentOS.
Pour construire les paquets RPM, les mainteneurs utilisant rpm(4|5) vont toujours consulter cette documentation http://www.tldp.org/HOWTO/RPM-HOWTO/ qui date du 3 novembre 1999. Coté scripte du Spec , la différence entre les distributions réside dans la définition des macros. Par exemple, si tu utilises différentes distribution GNU/Linux avec RPM, un simple :
$ rpm --showrc
te donneras la liste des macros qui dans certains cas différent. Depuis un paquet RPM source, il est possible de construire le rpm sur CentOS comme sur Caos Linux, les macros étant présque identiques.
Mis à part cela, le thème est PHP, et surtout les différences de compilations qu'apport la nouvelle version 5.3.0 de PHP ( pas de rpm). Utiliser CentOS, Caos ou même TOTO ;-) ne fait pas changer les options de compilation du propre PHP ?
Par contre et comme tu le vois, je suis intéressé moi aussi de parler de RPM, mais il faut faire un un fork :-) , la discussion ici étant PHP.
Merci @+
[1] Caos Linux:: http://caoslinux.org [2] RPM5:: http://rpm5.org [3] RPM5 Project Team:: http://rpm5.org/team.php
--S e r g e