Optimisation serveur : nginx + eaccelerator + vanish

Discussion dans 'Administration d'un site Web' créé par hanlin, 12 Mai 2011.

  1. hanlin
    hanlin WRInaute occasionnel
    Inscrit:
    23 Mars 2006
    Messages:
    263
    J'aime reçus:
    0
    Salut,
    Mon premier serveur debian est installé. Tout qui roule bien Apache + mysql + php . J'ai réussi à installé deux sites sans probleme. Je me suis interessé à un peu plus pret sur les possibilité d'améliorer les performances de ma machine. Je vais devoir faire tourner quelques cms. J'ai trouver des pistes, avant de tout casser :) j'ai envie d'avoir l'opinion de certains experts dans le domaine concernant les solutions proposées sur ces deux sites :

    Code:
    http://www.papygeek.com/software/optimiser-son-serveur-web-avec-nginx/

    Code:
    http://www.travisberry.com/2010/10/lightning-fast-php-server-with-nginx-eaccelerator-and-varnish/
    Merci par avance !
     
  2. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    9 207
    J'aime reçus:
    365
    Je préfère APC que eaccelerator car il semblerait que APC sera fourni de base avec PHP6.
    Et c'est super simple à installer sur Debian (Lenny):
    Code:
    apt-get install php-apc
    /etc/init.d/apache2 restart
    
     
  3. Julia41
    Julia41 WRInaute passionné
    Inscrit:
    31 Août 2007
    Messages:
    1 774
    J'aime reçus:
    0
    Oui APC est vraiment *le* truc à mettre: compatible avec tout.
    J'essaye de faire des benchs chez tous les clients où j'ai l'occasion d'installer ça, voilà quelques résultats:

    PHPMyAdmin (exemple typique d'un "gros" truc PHP)
    Code:
    Sans APC : Requests per second:    140.60 [#/sec] (mean)
    Avec APC : Requests per second:    475.25 [#/sec] (mean)
    Avece APC - Suhosin : Requests per second:    492.85 [#/sec] (mean)
    Wordpress
    Code:
    Sans APC : Requests per second:    27.37 [#/sec] (mean)
    Avec APC : Requests per second:    49.94 [#/sec] (mean)
    
    Pour nginx il faut surtout faire attention aux rewrites qui sont un peu long à convertir.
     
  4. hanlin
    hanlin WRInaute occasionnel
    Inscrit:
    23 Mars 2006
    Messages:
    263
    J'aime reçus:
    0
    Salut,


    Cependant, si je décide de suivre la solution préconisée par l'un des auteurs (je le site) :

    Devrais je faire ces adaptations en terme de htaccess ? Deja sur le htaccess de base je ne suis pas fortich alors si dois faire des conversions...
     
  5. hanlin
    hanlin WRInaute occasionnel
    Inscrit:
    23 Mars 2006
    Messages:
    263
    J'aime reçus:
    0
    Je viens de tester cette config avec nginx, j'ai testé un joomla...ça passe tranquile. Il suffit de rajouter une ligne dans la config du serveur et tout marche nickel pour le mod rewrite je n'ai rien eu à convertir...peut etre je devrais faire cela pour d'autres applications
     
  6. YoyoS
    YoyoS WRInaute accro
    Inscrit:
    14 Septembre 2006
    Messages:
    3 226
    J'aime reçus:
    0
    Installer cette ribambelle d'optimisations ça a bien des effets négatifs aussi non ? ce n'est que bénéfique donc ? ^^ Genre ça doit consommer à mort de ram ( a part pour lighthttpd ) et au final il y a plus de risques de swap s'il y a moins de ram dispo ? A partir de quel moment a-t-on réellement besoin de ces optis ? Ca me titille de tester tout ça mais bon, debian uptime de 250jours, aucun souci de vitesse ou perf, je suis malade moi :lol:
     
  7. hanlin
    hanlin WRInaute occasionnel
    Inscrit:
    23 Mars 2006
    Messages:
    263
    J'aime reçus:
    0
    Franchemment Yoyos, je suis très mal placé pour debattre avec toi sur ce sujet. Je suis loin d'avoir les compétences pour cela. Tout ce que je sais c'est que j'ai quelques sites qui tournent sous une release 2 , des cms pour la plupart...j'ai tout viré pour migrer sur cette debian, j'ai tenté de faire des modifs pour que le serveur tourne mieux (sur la base de mes recherches sur google) .

    Tout ce que j'ai fait jusque la c'est installer APC et mettre ce fameux nginx à la place d'Apache. Je trouve que ça roule mieux maintenant je ne sais pas si j'ai bien fait.
     
  8. Julia41
    Julia41 WRInaute passionné
    Inscrit:
    31 Août 2007
    Messages:
    1 774
    J'aime reçus:
    0
    eaccelerator + varnish là oui c'est "trop".

    Il faut faire un choix, "cacher" a un coup surtout au premier affichage.
    Après cacher dans la RAM (memcache par exemple) a un coup en RAM, mais soulage le disque, donc tout dépends "où" on est "radin": pas beaucoup de RAM, on va éviter, beaucoup de RAM et disques lents, autant le faire.

    Il faut faire des benchs en utilisation "normale". Une page qui est vue une fois par jour, n'a pas forcément besoin d'être en cache.
    Dans les trucs sans risques et rentable c'est réellement du APC et du Nginx ou Lighttpd.
    MySQL a aussi un cache par défaut, performant.
     
  9. YoyoS
    YoyoS WRInaute accro
    Inscrit:
    14 Septembre 2006
    Messages:
    3 226
    J'aime reçus:
    0
    Tiens je remonte ce topic, après avoir testé APC sur mon new serveur, rox du poney :D

    Et sous le dernier debian, juste une commande pour l'installer sans devoir tout compiler comme l'a dit spout ^^
    Code:
    apt-get install php-apc
     
  10. Julia41
    Julia41 WRInaute passionné
    Inscrit:
    31 Août 2007
    Messages:
    1 774
    J'aime reçus:
    0
    S'il y a "pas mal de sites" il faut un chouillat configurer :
    Code:
     cat /etc/php5/conf.d/apc.ini
    ; configuration for php apc module
    extension=apc.so
    apc.max_file_size = 8M
    apc.shm_size = 384M
    surtout le shm size qui par défaut est à 16Mo ça fait un ou deux sites de quelques Mo.
     
  11. YoyoS
    YoyoS WRInaute accro
    Inscrit:
    14 Septembre 2006
    Messages:
    3 226
    J'aime reçus:
    0
    La j'ai 30M par défaut, mais oui je compte bien augmenter la taille en fonction de l'utilisation des ségments. Surtout avec 16Go de ram, je sais pas ce que je vais en faire =D.

    Le truc c'est qu'il ne met qu'en mémoire les fichiers .php c'est tout. Tous les fichiers caches enregistrés en .html il ne les mettra pas en cache donc ? Ca serait pas interessant de changer l'extension des fichiers caches vers .php pour que APC les prennent en compte ?
     
  12. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    9 207
    J'aime reçus:
    365
    Pour vérifier l'état de la mémoire, il faut décompresser: /usr/share/doc/php-apc/apc.php.gz
    Et le copier là où il sera accessible via le serveur Web.
     
  13. YoyoS
    YoyoS WRInaute accro
    Inscrit:
    14 Septembre 2006
    Messages:
    3 226
    J'aime reçus:
    0
    Oui, j'avais oublié de le dire ^^ Bien utile ce petit script php !
    Sinon une idée pour les fichiers caches ? :D
     
  14. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    9 207
    J'aime reçus:
    365
    C'est du cache d'opcode: http://julien-pauli.developpez.com/tutoriels/php/apc/

    Si les fichiers .html sont parsés avec PHP (addtype application x-httpd-php .html) je pense que le PHP exécuté dedans sera mis en cache.
     
  15. YoyoS
    YoyoS WRInaute accro
    Inscrit:
    14 Septembre 2006
    Messages:
    3 226
    J'aime reçus:
    0
    Non pas de php dans les fichiers html chez moi. Mais si un fichier ne contient pas de code php à exécuter mais possède l'extension php. Aucun avantage donc à utiliser APC dessus ? Ou il ne pourra même pas ? J'vais faire un ti test ^^

    EDIT: Oui on dirait que le fait de juste changer l'extension sans même qu'il y ait de code php à l'intérieur du fichier le met en cache avec APC. Maintenant reste à savoir si c'est rentable de laisser gérer les fichiers statics de cache avec APC ou les laisser sans extension, ou .html, peu importe. APC pourrait éviter des accès disques pour récupérer les fichiers cache ? J'hésite :D
     
  16. Julia41
    Julia41 WRInaute passionné
    Inscrit:
    31 Août 2007
    Messages:
    1 774
    J'aime reçus:
    0
    A mon avis pas rentable.
    Le gros avantage d'APC dans ce cas est qu'il "saura" où aller chercher le cache sans compiler toutes les merdes.
     
  17. YoyoS
    YoyoS WRInaute accro
    Inscrit:
    14 Septembre 2006
    Messages:
    3 226
    J'aime reçus:
    0
    Tiens en passant faut mettre le paramètre sans le M (apc.shm_size = 384M)
    Comme ceci : apc.shm_size = 384
    Sinon on se tape une belle erreur [apc-error] apc_mmap: mmap failed: Cannot allocate memory
    :D
     
  18. Julia41
    Julia41 WRInaute passionné
    Inscrit:
    31 Août 2007
    Messages:
    1 774
    J'aime reçus:
    0
    Pas si tu as une version à jour ;)
    Dans "ma version" (APC 3.1.7, PHP 5.3.6) si tu le mets pas tu te payes un warning ;)
     
  19. YoyoS
    YoyoS WRInaute accro
    Inscrit:
    14 Septembre 2006
    Messages:
    3 226
    J'aime reçus:
    0
    Je passe par les paquets debian, j'espère qu'ils feront la maj très bientôt ^^
     
  20. Julia41
    Julia41 WRInaute passionné
    Inscrit:
    31 Août 2007
    Messages:
    1 774
    J'aime reçus:
    0
    Tu devrais ajouter les paquets dotdeb tu aurais des paquets lamp à jour ;)
     
  21. YoyoS
    YoyoS WRInaute accro
    Inscrit:
    14 Septembre 2006
    Messages:
    3 226
    J'aime reçus:
    0
    Si ils sont stables pourquoi n'y sont-ils pas par défaut alors ? :(
     
  22. Julia41
    Julia41 WRInaute passionné
    Inscrit:
    31 Août 2007
    Messages:
    1 774
    J'aime reçus:
    0
    Parce que c'est la stratégie debian: on attends un moment pour être sûr que c'est stable de chez stable mais du coup, par défaut les versions sont très vielles.
     
  23. YoyoS
    YoyoS WRInaute accro
    Inscrit:
    14 Septembre 2006
    Messages:
    3 226
    J'aime reçus:
    0
    T'as jamais eu de soucis avec le dotdeb ? J'vais chercher de la lecture à ce sujet histoire de changer d'avis ^^
     
  24. YoyoS
    YoyoS WRInaute accro
    Inscrit:
    14 Septembre 2006
    Messages:
    3 226
    J'aime reçus:
    0
    J'peux pas edit :D
    Voila j'ui passé a la 3.1.9
    J'ai du d'abord virer le paquet php-apc et installer php5-apc ^^
     
  25. Julia41
    Julia41 WRInaute passionné
    Inscrit:
    31 Août 2007
    Messages:
    1 774
    J'aime reçus:
    0
    "Curieusement" jamais.
    Le gars (un français en plus, alors autant en profiter) fait vraiment bien son boulot et quand il y a une update il a fait les tests.
    Généralement tu as 2/3 jours de décallage avec la version officielle car il fait quand même gaffe que des gros bugs n'apparaissent pas.

    @Yoyos oui (je te conseille de le suivre sur Twitter si tu t'y mets) c'était dans le but d'uniformiser le tout ;)
     
  26. YoyoS
    YoyoS WRInaute accro
    Inscrit:
    14 Septembre 2006
    Messages:
    3 226
    J'aime reçus:
    0
    Voila c'est fait ^^ C'était @Dotdeb j'imagine :D.
    Sinon c'est marrant le Hit d'apc: 99.9% xD
     
  27. YoyoS
    YoyoS WRInaute accro
    Inscrit:
    14 Septembre 2006
    Messages:
    3 226
    J'aime reçus:
    0
    Sinon j'viens de céder j'ai installer nginx , c'est surement psychologique mais j'ai l'impression que j'ai page s'affiche trop vite =D
    Après quelques tests sur ma box de test, tout s'est bien passé ! :D

    Merci à tous pour ce beau topic !!
     
  28. Julia41
    Julia41 WRInaute passionné
    Inscrit:
    31 Août 2007
    Messages:
    1 774
    J'aime reçus:
    0
    A mon avis ce n'est pas psychologique ;)

    Félicitation en tout cas d'avoir sauté le pas ;)
    Tu utilises bien PHP en FPM ? (sinon c'est peut-être la prochaine étape :p )
     
  29. YoyoS
    YoyoS WRInaute accro
    Inscrit:
    14 Septembre 2006
    Messages:
    3 226
    J'aime reçus:
    0
    je sais pas ce que c'est :D Je l'utilise juste pour les fichiers statics pour le moment. ^^ J'irai faire un tour pour voir ce que c'est ce fameux php-fpm ^^
     
  30. YoyoS
    YoyoS WRInaute accro
    Inscrit:
    14 Septembre 2006
    Messages:
    3 226
    J'aime reçus:
    0
    Tiens par curiosité je viens de tester mes redirections avec l'outil de wri et j'ai une petite erreur 400 badrequest. https://www.webrankinfo.com/outils/header.php?url=http://tutomaker.com/
    Tu vois pas d'où ça peut venir ? C'est suite à l'installation de nginx, mais comment identifier le problème :( C'est ptet aussi l'outil qui bug ? Parce que dans le navigateur en tout cas je suis bien redirigé.

    Quelqu'un aurait une idée pour corriger cela ?
     
  31. Julia41
    Julia41 WRInaute passionné
    Inscrit:
    31 Août 2007
    Messages:
    1 774
    J'aime reçus:
    0
    Tes logs te disent quoi ? :p
     
  32. YoyoS
    YoyoS WRInaute accro
    Inscrit:
    14 Septembre 2006
    Messages:
    3 226
    J'aime reçus:
    0
    J'ai juste ça dans l'access log d'apache :
    Code:
    194.146.226.133 - - [22/Jun/2011:16:16:06 +0200] "HEAD / HTTP/1.0" 301 204 "-" "-"
    Et rien dans les logs nginx vu qu'il a passé la requête a apache2 il me semble ^^
    Si t'as un site avec un combo Apache+Nginx avec Apache qui gère la redirection, tu peux tester l'outil aussi ?
     
  33. YoyoS
    YoyoS WRInaute accro
    Inscrit:
    14 Septembre 2006
    Messages:
    3 226
    J'aime reçus:
    0
    J'ai pas encore fini les améliorations de perf mais voila un peu le graphe après que le cache ait été généré, c'est hallucinant ^^ tombé a 52ms le téléchargement d'une page ^^

    Temps de téléchargement d'une page (en millisecondes):
    [​IMG]
     
Chargement...
Similar Threads - Optimisation serveur nginx Forum Date
Performance et optimisation de serveur Administration d'un site Web 13 Mars 2012
Problème d'optimisation de la base de donnée? ou problème du serveur Développement d'un site Web ou d'une appli mobile 11 Avril 2010
Lecture des Stats d'un serveur et analyse pour optimisation Administration d'un site Web 22 Septembre 2008
Optimisation/Réglage d'un serveur puissant (2x4C) Administration d'un site Web 6 Janvier 2008
Charge de mon serveur dedie et optimisations Administration d'un site Web 26 Février 2007
Optimisation SEO de mon site Demandes d'avis et de conseils sur vos sites 7 Novembre 2022
Optimisation d' un site avec Yoast Débuter en référencement 5 Mai 2022
WordPress Avis et question concernant une optimisation dû à de multiples sites Demandes d'avis et de conseils sur vos sites 18 Avril 2022
Optimisation publication FB Facebook 14 Avril 2022
Optimisation d'une page : Titre du Site et Menu comment les inclure? Débuter en référencement 13 Septembre 2021
Astuce Optimisation des URLs Débuter en référencement 15 Juin 2021
WordPress PageSpeed - optimisation - fonts Développement d'un site Web ou d'une appli mobile 27 Janvier 2021
Optimisation SXO de site web de mon agence Référencement Google 22 Janvier 2021
Avis et optimisation sur blog voyage Demandes d'avis et de conseils sur vos sites 24 Décembre 2020
Optimisation du Cumulative Layout Shift (CLS) Référencement Google 8 Décembre 2020
Optimisation URL pour les moteurs de recherche Débuter en référencement 15 Novembre 2020
Optimisation site Wordpress Débuter en référencement 21 Août 2020
Optimisation des publicités / revenus AdSense 19 Juillet 2020
WordPress optimisation des temps de chargements Débuter en référencement 28 Juin 2020
Optimisation pour la catégorie de produits de commerce électronique Rédaction web et référencement 26 Juin 2020