ghosttugastyle Posted August 14, 2017 Share Posted August 14, 2017 Bonjour, les amis marchands et développeurs prestashop, je suis responsable d'un site de vente de produits airsoft et accessoires et malgré mes compétences en informatique et développement et malgré mes recherches, mon site me semble toujours lent. J'ai adapter toutes mes images, les css, javascripts mais je crois qu'il y a un problème lorsqu'on essayé d'accéder au site, il mets trop de temps à répondre. Site tester sur un VPS 1&1 et sur l'hébergement mutualisé (UNLIMITED PRO au maximum avec un cdn plus) pour le cdn de 1&1 j'ai l'impression qu'il sert à rien. Donc en dernier recours et je voulais pas trop vous embêter, je me tourne vers vous. Voilà, l'url de mon site : https://airsoftstore.fr Je suis à l'écoute de vos remarques.Merci d'avance pour votre attention et aide. Link to comment Share on other sites More sharing options...
Alexandre Carette Posted August 14, 2017 Share Posted August 14, 2017 (edited) Salut ghosttugastyle, Ton site est en effet très lent, plusieurs outils l'affirme sur la homepage (mais il faudrait tester également sur une page catégorie et une page produit voir CMS...) https://tools.keycdn.com/performance?url=https://airsoftstore.fr/ https://gtmetrix.com/reports/airsoftstore.fr/qgjsO3o6 https://developers.google.com/speed/pagespeed/insights/?hl=fr&url=https%3A%2F%2Fairsoftstore.fr%2F http://www.webpagetest.org/result/170814_ZR_M9H/ Ceci n'est pas bon pour tes visiteurs et les robots de google.... Mais ce n'est pas une fatalité ! Dans un premier temps lisons la doc officielle de Prestashop: http://doc.prestashop.com/pages/viewpage.action?pageId=26148921 Par exemple, vous n'aurez sans doute pas accès au fichier php.ini sur un hébergeur mutualisé. Si votre hébergeur ne vous offre pas par défaut la configuration requise et que vous ne pouvez pas accéder au php.ini, vous devriez soit passer à un hébergement dédié, ou trouver un hébergeur plus permissif Un formule qui marche bien est un serveur VPS SSD de chez ovh https://www.ovh.com/fr/vps/vps-ssd.xml A utilisé avec un Prestashop dans sa branche 1.6 ! Systeme d'exploitation: Ubuntu 14.06 Serveur HTTP: Apache 2 PHP 5.6 Serveur de base de donnée: Percona Server meilleures perfs cf: http://www.journaldunet.com/developpeur/outils/fork-a-mysql/percona-server.shtml MySQL (ou Percona Server, voir la section "Améliorer les performances de PrestaShop" plus bas dans ce chapitre). Une fois ton serveur installé, voici quelques réglages editer php.ini upload_max_filesize 800M post_max_size 800M max_execution_time 200 max_input_time 200 max_input_vars 20000 memory_limit 1024M Activer OPCACHE (accélère l'accès au code PHP) editer php.ini opcache.enable=1 opcache.memory_consumption =128 opcache.interned_strings_buffer =6 opcache.max_accelerated_files = 10000 opcache.validate_timestamps=0 dans le shell activer opcache php5enmod opcache Augmenter le cache de mySQL dans /etc/mysql/my.cnf query_cache_limit = 10M query_cache_size = 256M Installe memcached (accélère l'accès aux données) dans /etc/memcached.conf[/size] changer la valeur de m modifier -m 64 to -m 128dans le shell redémarrer memcached service memcached restart Dans le backoffice de Prestashop quand le site est en production: Compilation des templates --> Ne jamais recompiler les fichiers de templates "Smart cache" pour les feuilles de style --> OUI "Smart cache" pour le code JavaScript --> OUI Réduction du code HTML --> OUI Compression du JavaScript dans le code HTML --> OUI Déplacer le code JavaScript à la fin --> OUI Optimisation Apache --> OUI Ensuite utilise les serveur de média: Serveur de média n°1: statics1.tonsite.com Serveur de média n°2: statics2.tonsite.com Serveur de média n°3: statics3.tonsite.com Utiliser le cache --> OUI Memcached par PHP::Memcached ajouter un serveur (localhost port: 11211) Souvent ce qui cause les ralentissements sont les requêtes à la base de données effectuées par les différents modules, il faut donc faire une analyse en activant le debug Profiling: dans config/defines.inc.php define('_PS_DEBUG_PROFILING_', true); Supprimer les modules inutiles. Voila... pour les plus téméraires utiliser le Critical CSS: https://www.sitelocity.com/critical-path-css-generator Edited August 14, 2017 by Alexandre Carette (see edit history) Link to comment Share on other sites More sharing options...
Creastyle Posted August 14, 2017 Share Posted August 14, 2017 (edited) Salut, effectivement c'est une cata : http://speed.devs.mx/analyze.php?url=https://airsoftstore.fr/&id=68080743 ta home page met pratiquement 11 secondes à charger pour 3.9 MB et 179 requêtes c'est beaucoup trop la première chose à faire est d'optimiser tes images qui à elles seules pèses 3.80MB ensuite personnellement je trouve que les sliders ne servent à rien surtout que tu en as 4, très franchement tu connais beaucoup de gens qui restent sur la page d'accueil et attendent que les sliders défilent ? Ensuite il faut que tu utilise un module de cache (il y en a des très bons pour à peine 40€) parce que 179 requêtes ..... Les CDN c'est bien mais seulement si tu vise des clients à l'international, autrement ça n'a aucun intérêt et au contraire parfois ça peut même produire l'effet inverse. Penses aussi à activer toutes les améliorations possible dans ton admin, onglets préférences avancées -> performances si après toutes ces modifs ça rame encore change d'hébergeur et prend un hébergement vps ou cloud il y en a des très bien pour un prix tout à fait raisonnable. Tu peux aussi virer certains modules totalement useless : email, liste d'envie, imprimer Edited August 14, 2017 by Creastyle (see edit history) Link to comment Share on other sites More sharing options...
pedepot Posted August 14, 2017 Share Posted August 14, 2017 La page d’accueil est très lente en effet. Toutefois, les pages intérieures comme les pages produits se chargent beaucoup plus rapidement. Sur la page d’accueil, les images sont principalement la source du ralentissement. Elles mettent 5 secondes en moyenne à charger. Les fichiers JS ne sont pas du reste. Ils mettent en moyenne 4 secondes à charger. Vous pouvez aussi configurer les media serveurs pour améliorer l’accès aux divers fichiers. Bonne chance Link to comment Share on other sites More sharing options...
Creastyle Posted August 14, 2017 Share Posted August 14, 2017 Pas d'accord, les media serveurs ne sont pas utiles et peuvent même ralentir l'affichage si on ne vise pas une clientele internationale . Ah oui forcément les pages produits mettent moins de temps a charger mais pardon 3.42 sec pour 952 ko ... cherchez le problème Link to comment Share on other sites More sharing options...
ghosttugastyle Posted August 14, 2017 Author Share Posted August 14, 2017 Merci de vos réponses, cest vraiment cool d'avoir des reponses aussi clairs. Après pour commencer je vais changer d'hebergeur parce 1&1 n'est pas top et ja vais aller chez ovh avec un bon vps. merci encore. Link to comment Share on other sites More sharing options...
Alexandre Carette Posted August 14, 2017 Share Posted August 14, 2017 (edited) les media serveurs ne sont pas utiles et peuvent même ralentir l'affichage source: https://forum.alsacreations.com/topic-1-59511-1-Conseils-de-Page-Speed-et-Yslow-non-compris.html#p406981 Les navigateurs ont une limite de requêtes qu'ils peuvent envoyer sur la même adresse. Par exemple, si ton navigateur a une limite (fictive) de 30 requêtes simultanées sur une adresse et qu'il doit télécharger 45 fichiers pour afficher ton site, alors il téléchargera les 30 premières ressources et attendra leur arrivée pour lancer les 15 dernière ressources. Cela sera plus long que s'il peut télécharger les 45 ressources du même coups car elles proviennent de diverses URL.[/size] Une URL différente peut simplement être un sous domaine, par exemple : static.tonsite.com Avec chaque requête, la navigateur envoie les cookies liés au domaine recevant la requête. Si tu sers tous tes fichiers statiques (css, js, images, fonts, etc) à partir d'un domaine différent n'utilisant pas de cookie, tu sauveras légèrement sur la taille des requêtes au serveur. Ceci va de pair avec le point 1 et se règle de la même manière.[/size] Donc si les serveurs de média servent.... On pourrait même aller plus loin en mettant tout le contenu statique du site sur un autre serveur avec NGINX installé au lieu d'apache pour augmenter les perfs. cordialement Edited August 14, 2017 by Alexandre Carette (see edit history) Link to comment Share on other sites More sharing options...
Creastyle Posted August 14, 2017 Share Posted August 14, 2017 Les serveurs cdn sont des dispatch à travers le globe des images, js et css du site concerné explique moi l'intérêt de faire charger des images depuis une source qui se trouve de l'autre côté du globe d'autant que les clients concernés chargeront les ressources depuis un data center le plus proche de leur lieu de connexion, d'autre part cette limitation n'a plus de sens en http/2, donc je maintient ce que je disais c'est totalement inutile si tu vise des clients en France et en Europe. Et je doute que son hébergement soit en nginx. Je pense que tu devrais commencer par optimiser tes images et ensuite changer d'hébergeur ! Link to comment Share on other sites More sharing options...
Alexandre Carette Posted August 14, 2017 Share Posted August 14, 2017 (edited) Je ne parle pas des CDN... Tu peux utiliser l'option media serveur de Prestashop en y ajoutant des sous domaines qui pointent vers le serveur, deux avantages: Parallelisation des requêtes Domaine sans cookie comme expliqué plus haut cordialement Edited August 14, 2017 by Alexandre Carette (see edit history) Link to comment Share on other sites More sharing options...
ghosttugastyle Posted August 14, 2017 Author Share Posted August 14, 2017 Impossible de régénérer les image via l'hébergement mutualisé de 1and1, pas assez performant (erreur 500) j'ai presque 2000 produits avec 2/3 images chacun. Link to comment Share on other sites More sharing options...
Alexandre Carette Posted August 14, 2017 Share Posted August 14, 2017 c'est certainement le max_execution_time qui doit être bridé sur le serveur mutualisé de 1&1 il faut être au minimum sur un serveur VPS pour au moins ajuster les differents réglage de PHP cdt Link to comment Share on other sites More sharing options...
Creastyle Posted August 14, 2017 Share Posted August 14, 2017 Je pense que ce n'est pas ça son problème, il pourra ajouter autant de serveur de média qu'il le souhaite que son site ne chargera pas plus vite, pour preuve une page de moins de 1 mo qui nécessite plus de 3 secondes à charger ce n'est ni le poids des scripts ni celui des images mais bien l'hébergement qui est en cause. Et en ce qui concerne la mise en place des serveurs de média il est préférable de les prendre via des domaines différents avec des serveurs différents afin de dispatcher la charge : https://www.reussir-mon-ecommerce.fr/optimisation-des-performances-de-prestashop/ Link to comment Share on other sites More sharing options...
Alexandre Carette Posted August 14, 2017 Share Posted August 14, 2017 Perso je pense que son pb vient d'une requête mal foutu à la base de donnée, venant d'un ou plusieurs modules.... il suffit de mettre le site en mode debug profiling pour en être sur.... Après bien sûr je te rejoins: le minimum pour un Prestashop est un hébergement sur un VPS avec une bonne installation et configuration cordialement Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now