Magento 2 : Bonnes Pratiques 01 à 05

Magento 2 25 bonnes pratiques

Technique

Magento 2 est une plateforme e-commerce robuste et parmi les plus réputées du marché. Elle a été construite pour servir des milliers d’utilisateurs à la fois ! Sans un hébergement efficient et de bonnes pratiques sur Magento 2, vous pouvez vous retrouver avec un site marchand extrêmement lent et pénible à utiliser !
La pérennité de votre activité en ligne en dépend.

Les utilisateurs détestent perdre leurs temps. Leurs frustrations entraînent une baisse des ventes et une mauvaise expérience.
Google discrimine aussi les sites web lents.

En effet, un Magento 2 lent est néfaste pour le SEO (référencement naturel).
Si votre boutique en ligne prend son temps pour se charger, Google le remarquera et vous classera en dessous de vos concurrents !
Cela crée une pente dangereuse.

Un site web lent va s’enfoncer de plus en plus dans les pages de résultats de Google, ce qui engendrera un déclassement de votre activité.

Dans cet article, nous vous présenterons nos travaux en termes d’optimisation des performances et de la sécurité pour maximiser votre présence en ligne au travers de bonnes pratiques sur Magento 2.

De nombreux outils d’optimisation en ligne de Magento 2 mettent l’accent sur les performances du front-end.

C’est parce qu’ils ne peuvent pas / ne veulent pas mesurer autre chose.
Chez NBS System, nous vous proposons une approche globale qui vous permet d’évaluer tous les aspects de la performance de votre boutique et de résoudre tous les problèmes de Magento 2.

Nous avons recueilli les avis de nos experts internes en optimisation Magento 2 et nous nous sommes concentrés sur les bonnes pratiques Magento 2 qui fonctionnent actuellement et qui fonctionneront tout au long de cette année.

Magento 2 : Boostez votre site E-Commerce

Tous les correctifs sont classés par ordre, des incontournables aux optionnels.
Attention, même si ces conseils sont classés dans l’ordre suivant : de ceux qui ont le plus d’impact sur les performances à ceux qui sont totalement facultatifs, certains de ces correctifs apporteront de meilleurs résultats en fonction de votre contexte.

Nous avons essayé de rendre ces bonnes pratiques Magento 2 aussi conviviales que possible. Et quand bien même certaines d’entre elles s’adressent à des utilisateurs Magento 2 non-techniques, une connaissance technique est nécessaire pour bien en comprendre les tenants et aboutissants.

Magento 2 : Évaluez la vitesse de votre site web marchand

Avant de passer à la partie optimisation, vous devez savoir où en est votre site web aujourd’hui en termes de vitesse.

Il ne sert à rien d’effectuer un test de performance Magento 2 de manière subjective, bien que la performance perçue soit une partie importante de l’expérience utilisateur.
Il faut être scientifique !

Ce que nous recherchons, c’est un meilleur TTFB (Time To First Byte).
Ce benchmark détermine le moment où le serveur envoie à votre navigateur son tout premier octet.
Selon Google, ce temps devrait être d’au maximum 200ms.

Nous sommes allés sur amazon.com pour voir comment ça se passe. Il s’avère que même le géant du commerce électronique a un peu de mal avec la TTFB.

Bonnes pratiques Magento 2 Amazon

Vous pouvez facilement mesurer votre propre TTFB en utilisant des techniques simples.

Attention, Le TTFB dépend de l’emplacement du serveur d’hébergement et de la localisation de votre client.

Ce facteur de distance géographique peut-être grandement amélioré à l’aide d’un CDN (réseau de diffusion de contenu en Français). Nous aborderons cela dans les prochaines lignes.

Deux méthodes pour mesurer le TTFB :

1) Depuis votre ordinateur :

Pour mesurer le TTFB depuis votre ordinateur, utilisez la console de développement Chrome. Cette méthode est meilleure car vous mesurez le temps de réponse de Magento 2 pour le téléchargement du premier octet à partir de votre emplacement réel.

2) Depuis un outil en ligne spécialisé :

Nous utiliserons tools.pingdom.com pour ce faire.

Bonnes pratiques Magento 2 Pingdom
Bonnes pratiques Pingdom
Bonnes pratiques Pingdom

Au survol de la première requête, le TTFB est de 373ms.

Magento 2 : Mesurer son propre TTFB

  1. Allez sur “test.com » ou sur l’URL de votre propre site.
  2. Dans Chrome, appuyez sur F12 pour ouvrir la console du développeur.
  3. Aller à l’onglet Réseau (Network).
  4. Triez par cascade et passez votre souris sur la première entrée.

La TTFB que vous voyez dans la fenêtre contextuelle est celle que vous recherchez.

Si elle est supérieure à 200ms, les choses doivent changer !

Magento 2 : Comment améliorer le TTFB ?

Nous vous donnerons d’autres conseils pour réduire votre TTFB, mais très souvent, la solution la plus efficace est de prendre contact avec de vrais spécialistes.

N’oubliez pas qu’il ne suffit pas de souscrire à des serveurs virtuels / dédiés plus performants pour résoudre tous vos problèmes de lenteurs.

Les facteurs d’optimisation sont primordiaux.

Chez NBS System, nous serons heureux de trouver une solution d’hébergement optimale pour vos besoins actuels et futurs.

Bonne Pratique Magento 2 01 : S’assurer que le CMS fonctionne en mode production

Vous avez déjà entendu cela, cependant assurez-vous que Magento 2 est en mode Production !

Vous serez surpris de voir combien de fois les personnes oublient de changer de mode après avoir corrigé quelque chose en mode Développeur ou après une nouvelle installation.

Chez NBS System, nous infogérons l’infrastructure de votre plateforme Magento 2.

Lorsque vous installez Magento 2 pour la première fois, il fonctionnera en mode par défaut.

Ce mode est celui à utiliser afin de configurer et tester votre boutique Magento 2 avant de l’ouvrir à vos clients.

Le mode par défaut vous permet de bricoler quelques fonctionnalités sympas mais n’offre pas les meilleures performances…

Outre le mode par défaut, il existe deux autres modes de Magento 2.

  • Mode Développeur : Utilisé pour la journalisation, la chasse aux bugs et la configuration plus approfondie de votre installation de Magento 2.
  • Mode Production : Ce mode est optimisé pour les performances. C’est celui que vous souhaitez utiliser au quotidien car le mode Production vous permettra d’obtenir la meilleure expérience utilisateur.

Les modes Défaut et Développeur sont lents.

Assurez-vous de passer en mode production avant de permettre l’accès à votre boutique en ligne !

php bin/magento deploy:mode:set production

Bonne Pratique Magento 2 02 : Mise à jour vers la dernière version stable

Attention, Magento 2.0 n’est pas la dernière version de la plateforme.
En effet, Magento publie de nouvelles versions du CMS presque tous les trois mois.
Au moment où nous écrivons ces lignes (Mars 2021), la version la plus récente et la plus optimisée est la 2.4.2 qui devance de loin les précédentes.

Ils ont apporté quelques améliorations de performance dans plusieurs domaines dans le but de rendre les sites web Magento 2 plus rapides.

En voici quelques exemples :

  • Les éléments CSS non critiques sont déplacés vers le bas de la page.
  • Cette mise à jour permet au navigateur d’accélérer le rendu et l’affichage de la page d’accueil (Home page)
  • Cette mise à jour permet aux utilisateurs de voir la page plus tôt alors que les éléments non critiques restent passifs.

Par défaut, ce paramètre est désactivé.
Afin de l’activer, vous devez aller dans Magasins > Configuration > Avancé > Développeur > Paramètres CSS > Utiliser le chemin critique CSS.

Avec la dernière version de Magento 2, le contenu du texte est affiché dans des polices système lisibles pendant le chargement des polices personnalisées. Cette mise à jour est donc particulièrement importante pour les magasins qui implémentent de nombreuses polices et de gros fichiers CSS.
Par conséquent, elle rend Magento 2 plus rapide en améliorant la vitesse des pages.

Au cas où la question “Pourquoi Magento 2 est-il si lent ?” se poserait, vous devez noter qu’il est essentiel de mettre votre boutique à niveau vers la dernière version de la plateforme.
Dans le cas d’une infogérance système NBS, nos équipes peuvent réaliser l’accompagnement sur la migration.

Non seulement parce que vous obtiendrez plus de fonctionnalités, de corrections de bugs et de sécurité, mais aussi parce qu’à chaque mise à jour, Magento 2 est plus performant.

Bonne Pratique Magento 2 03 : Configurer REDIS

Boostez les performances backend pour Magento 2 avec REDIS !

Redis est un système de cache distribué qui utilise la RAM de la machine afin d’avoir un accès rapide aux données avec un système de clé/valeur.

En terme simples, il s’agit d’un outil de mise en cache pour le backend Magento 2.

Votre boutique est donc optimisée !

Chez NBS, nous installons et optimisons la configuration de Redis pour Magento 2.

Nous vous expliquons comment mettre en place Redis sur Magento 2 afin que vous puissiez améliorer les performances côté serveur.

Magento 2 : Comment installer REDIS ?

La plupart des hébergeurs web peuvent vous aider à installer Redis.
Après l’installation, vous devrez également le configurer.
Les paramètres de configuration par défaut du serveur conviennent la plupart du temps, mais pour une optimisation approfondie de la plateforme Magento 2, nous vous recommandons de faire appel aux experts NBS.

Pour installer Redis, vous y retrouverez le détail dans le manuel en ligne.
https://devdocs.magento.com/guides/v2.0/config-guide/redis/redis-pg-cache.html

Vous y trouverez une installation très détaillée, étape par étape, à partir des fichiers sources, ainsi que les guides de configuration des systèmes d’exploitation les plus courants (Ubuntu CentOS Debian). Ainsi, vous pourrez installer et configurer tout vous-même.

Vous devrez naviguer manuellement vers le fichier env.php situé dans le dossier/app/etc/ et le modifier avec n’importe quel éditeur de texte.

Au départ, la version par défaut d’env.php indiquera qu’elle enregistre dans des fichiers (pour une installation locale de Magento 2) ou dans une base de données (pour un site web en direct).
Notre objectif est d’enregistrer les sessions et le cache sur Redis.
Pour se faire, nous ajouterons les lignes suivantes à env.php :

Pour l’exemple, il est question du client fictif ‘DemoNBS’ utilisant la plateforme AWS et le service Amazon ElastiCache for Redis.
https://aws.amazon.com/elasticache/redis/

Bonnes pratiques Magento 2 03 Code DemoNBS

Les paramètres utilisés sont fonction du contexte de votre environnement.
En cela, nous recommandons une lecture de documentation :
https://devdocs.magento.com/guides/v2.4/config-guide/redis/redis-pg-cache.html

Il s’agit encore une fois d’un exemple.
Vous devrez renseigner les paramètres avec votre propre configuration, host, port, etc.

Bonne Pratique Magento 2 04 : Activer l’outil de mise en cache Varnish

Varnish est un outil de mise en cache qui fonctionne comme une couche supplémentaire entre le serveur web et l’utilisateur.
Il met en cache les fichiers fréquemment demandés en mémoire vive (RAM).
La RAM est beaucoup plus rapide que n’importe quel autre support de stockage (Disque mécanique HDD, Disque SSD…) et elle renvoie les fichiers mis en cache en une fraction de seconde.
Ainsi, au lieu d’une longue attente, l’utilisateur verra la page presque instantanément.

Varnish est plus flexible que le cache intégré à Magento 2 par défaut.
Cette flexibilité a un prix. Si vous configurez Varnish de manière incorrecte, les performances en seront dégradées.
Varnish introduit également un nouveau SPOF (point de défaillance) qui peut dans certains cas compromettre la stabilité.
En résumé, Varnish est donc un compromis entre vitesse et fiabilité.

Varnish est l’un des composants tier majeur de votre boutique.
C’est pourquoi nous vous recommandons d’utiliser une instance séparée pour vérifier la stabilité du système et éviter les temps d’arrêt de votre production.

En résumé, l’ajout de Varnish permet d’améliorer la vitesse de chargement de 50 à 100%.

Chez NBS System, nous utilisons Varnish en haute disponibilité (deux instances) selon le contexte client.

Bonne Pratique Magento 2 05 : Profilage et examen de toutes les extensions tierces

L’utilisation de plusieurs extensions provenant de différents fournisseurs peut dégrader considérablement les performances du site marchand…
Ils peuvent affecter la vitesse de Magento 2 par divers moyens :

  • Les extensions personnalisées peuvent surcharger le serveur en raison de certains problèmes critiques négligés par les développeurs.
  • L’installation d’un grand nombre d’extensions qui offrent en fait des fonctionnalités similaires surcharge le système et ralentit le chargement du site Magento 2. Par conséquent, ces extensions effectuent les mêmes opérations, demandent les mêmes données et les traitent plusieurs fois. Il va sans dire que ces actions répétées ont un effet négatif sur la vitesse.
  • L’installation d’extensions tierces avec de nombreuses fonctionnalités dont la plupart ne sont jamais utilisées. Les fonctionnalités non utilisées créent une charge non évidente sur les performances du système.

Lorsqu’il s’agit d’extensions tierces, la seule façon d’éviter les problèmes qu’elles posent est de passer constamment en revue votre site web avec Magento Profiler afin de vérifier les éventuels “tueurs de performances”.
https://devdocs.magento.com/guides/v2.4/config-guide/bootstrap/mage-profiler.html

La suite est d’ores et déjà disponible sur notre blog avec un article dédié aux bonnes pratiques Magento 2 – 06 à 10. Bonne lecture !