Le 19/07/10 18:22, Xavier Beaudouin a écrit :
Salut Greg,
Le 19 juil. 2010 à 18:06, Greg a écrit :
Bonjour,
je vous passe les détails, mais les devs ont fait un site avec un modèle MVC et un framework que je ne citerais pas... Mais c'est pas assez rapide, donc comme vous le savez ça retombe sur les sysadmins. Ne vous inquiétez pas je ne me suis pas laisser faire ;) et ce depuis le départ, quand un simple "hello world" sortait en 400ms contre 10ms brut avec un include_de_2k_lignes_mais_sans_objets...
Une des solutions pour accélérer le bouzin, c'est de changer le hardware. Pas la peine de parler des autres solutions, je les connais déjà, je souhaite juste étudier et chiffrer celle-ci.
Commence par dégager apache et mettre nginx en frontal (en fcgi), déplacer les static sur un serveur à part, et pour les bouts de cgi pour la monetique, reverse proxy_pass de nginx vers un thttpd ou autre httpd basique. Tu gagnes déjà le moteur asynchrone et une meilleur utilisation des cores dispos (moins de deadlock sur l'allocateur de PHP, qui est LE problème avec symfony)
Aujourd'hui on a des serveurs 8 coeurs cadencés a 2,33GHz (L5410), et je voudrais savoir ce que donnerais un Nehalem cadencé à 2.26GHz par rapport aux Xeon, pour exécuter des pages PHP5. Aujourd'hui elles sortent en ~500ms avec les Xeon, avec APC, du cache, et tout le toutim.
Est-ce que vous avez déjà expérimenter ces processeurs pour ce type d'application ? Ya de grande chance pour que j'en achète un pour voir, mais je souhaite d'abord écouter vos avis.
Nehalem 4/6 cores / 3 canaux ou Opteron 8/12 cores / 4 canaux, à la limite je pencherai plutôt pour des Opteron dans ce cas précis, car ce n'est pas la fréquence des CPU qui bloque, c'est la vitesse d'instanciation des objets. Et avec nginx, tu gagnes sur l'utilisation de plus de cores plus lents.
En plus, c'est moins cher. Mais ça on peut en causer en PV.
Ca ira plus vite c'est sûr... Mais bon... Reste que quand même y a des merdes dans le code :p
Greg, tu devrais donner des 486 a tes dev... histoire qu'ils apprennent a coder...
Y peuvent pas, ils "bossent" sous eclipse. Mais bon, c'est un grand classique, "sur ma station ça marche" dit le couillon qui tourne tout seul sur un quadcore.
<OT> J'ai 2 nehalems E5530 en rab... </OT>
Disons que pour de l'usage filer (opensolaris zfs + infiniband) sur de la carte mère supermicro ça dépote pas mal....
Je suis pas sur que ce soit deux applications assez proches ;) Mais oui, les archis nehalem sont très bonnes en web.
A noter que avec du nehalem, il faut mieux prendre de la grosse barrette mémoire que plein de petites barrettes mémoire sinon ton joli bus DDR3 dégringole a 800MHz au lieu de 1333MHz :) qui pour des appli avec des jolies frameworks qui mange partout... a l'air important....
Je saute d'ailleurs sur l'occasion vis a vis des nehalem, hyper threads ou pas (moi de mon coté j'ai plutôt penché vers le "pas" :).
Moi j'en met pas. Encore une fois parce que le problème, en PHP/symfony, c'est _toujours_ la vitesse d'instanciation de la myriade d'objets intermédiaires nécessaires à l'ORM. Et ça, l'hyperthreading n'y changera pas, à part augmenter la contention sur les routines d'allocation.
Xavier _______________________________________________ FRsaG mailing list FRsaG@frsag.org http://www.frsag.org/mailman/listinfo/frsag