Le 22/01/2013 07:53, Marc Fournier a écrit :
Hello Antoine,
Excerpts from Dominique Rousseau's message of 2013-01-21 16:14:26 +0100:
Séparer les contenus statiques (images, css, ...) et ceux qui sont générés dynamiquement, pour pouvoir, par exemple, aiguiller vers 2 vhosts différents Identifier, parmis les contenus générés dynamiquement ceux qui sont spécifiques à un utilisateur (après qu'il se soit identifié, par exemple) et ce qui est "commun", sur des masques d'urls séparés. Fonction de tout ça, tu pourras répartir, et si besoin mettre un cache (squid, varnish, ...) en reverse devant ton apache.
+1
Ne te laisse pas trop influencer par les conseils "utilise outil X plutôt que outil Y, c'est mieux, c'est vrai, je l'ai lu sur internet".
C'est surtout grâce à une architecture judicieuse que tu vas réussir ton projet. Choisir des composants qui se prêtent bien au monitoring, c'est essentiel pour pouvoir "observer" ce qui se passe en production et faire les ajustements de configuration au fil du temps.
+1
Pour avoir plus de 10x le trafic que tu annonces sur des serveurs Apache2, je peux te dire que ça tient, et ça tient les montés en charge.
NGiNX est un excellent serveur HTTP, je l'ai d'ailleurs mis en amont, mais mes Apache encaisse encore 1000 qps. Un Apache2 bien configuré sera meilleur qu'un NGiNX stock, et vice-versa. J'ai réfléchi à migrer tout mes Apache sous NGiNX, et je me heurte à un besoin tout bête : l'équivalent de RewriteCond. Sous NGiNX ça se fait avec "if" mais la doc de Nginx a une page dédié au découragement de son utilisation : IfIsEvil http://wiki.nginx.org/IfIsEvil
Avec ma stack NGiNX + Apache2/mod_php, finalement je peux faire ce que je veux avec des perfs plus qu'honorable et une montée en charge sans soucis, d'ailleurs, ce qui me pose soucis aujourd'hui lors de montée en charge violente, c'est le code PHP et ses connexions à memcached, memcached qui part en sucette... Vivement qu'ils aient tout passé sur Redis !
Bonne journée !