Je travaille actuellement sur Magento 2 et j'ai remarqué que les temps de chargement de toutes les pages sont extrêmement élevés.
Je fonctionne actuellement sur Xampp, le mode de production est activé, HTML / js / CSS sont fusionnés et minifiés, Varnish est désactivé et je ne l'utiliserai pas car mon hébergement web ne peut pas l'installer sur mon serveur car il interférera avec certains scripts. J'utilise un thème personnalisé dont le parent est le thème vierge de Magento 2. Après avoir modifié mes paramètres, j'ai redéployé des fichiers statiques et vidé le cache.
Ma principale préoccupation est que lorsque je regarde le panneau réseau, je vois qu'une énorme quantité de fichiers js est chargée à chaque fois. Par exemple, sur ma page de catégorie, 122 fichiers js sont chargés, ce que j'ai trouvé beaucoup, pour une taille totale de 955 ko.
Je l'ai testé sur mon serveur sans la fusion et la réduction mais comme je l'ai dit ci-dessus, je pense que le problème réside dans la quantité de fichier chargé car même s'il se charge plus rapidement, il est encore trop long et lors du processus de paiement, il est encore pire.
J'ai essayé l'option de regroupement, mais elle génère un fichier js de 8 Mo, ce qui est pire.
Ai-je raté quelque chose ou est-ce quelque peu normal que la quantité de fichiers js soit aussi élevée? Le vernis est-il obligatoire pour de bonnes performances et existe-t-il une alternative?
Je suis assez nouveau sur Magento 2, donc si vous avez besoin de plus d'informations, je serai heureux de vous les fournir.
la source
Réponses:
La quantité de JS est énorme, mais si elle résume à 8 Mo, il y a quelque chose qui ne va pas. Vous devez utiliser la configuration "Bundling" en mode production si vous ne voulez pas que> 100 fichiers soient chargés.
Avec le thème Luma par défaut, regroupement, fusion et réduction activés, le fichier JS fourni est de 1,9 Mo.
Le vernis est un autre sujet et n'aidera pas aux performances des fichiers statiques générés.
la source
Je suis également assez nouveau sur Magento 2, mais jusqu'à présent avec magento 1 et 2, nous avons dû activer la mise en cache pour que tout ait une vitesse quelconque. La quantité de js est énorme, donc la mise en cache est votre meilleur ami. Vous pouvez activer la mise en cache en exécutant php bin / magento cache: enable. Si vous avez mis en cache, vous devrez le vider après avoir effectué des modifications en utilisant php bin / magento cache: flush. La mise en cache intégrée de Magento 2 est disponible, même sans Vanish.
la source
Il est vraiment surprenant que ce problème soit réel pour Magento 2 en 2020. Le regroupement ne regroupe pas 90% des fichiers (comme décrit ici )
Js merge, d'autre part, fusionne tout dans un super-lourd-méga-pack.
Cependant, bien qu'il ne puisse pas être résolu avec Magento par défaut, voici une extension payante qui améliore beaucoup le comportement susmentionné: optimisation de la vitesse de la page Google
la source