Magento est relativement bien optimisé en natif. Cependant chaque chargement d’une page provoque l’exécutions de centaines de milliers – voire de millions – d’instructions qui vont impactées les ressources processeur et mémoire.

Pour peu que le site ait un trafic relativement important, cela peut provoquer une augmentation du temps de chargement de pages voire une saturation des ressources serveur.

free-web-proxy-foto

La solution : la mise en cache.

Quand des pages – ou des parties de pages – sont en cache, elles ne sont plus recréées chaque fois qu’un utilisateur y a accès.
En effet les caches sauvegardent le contenu d’une page la première fois qu’elle est appelée. Par conséquent quand une requête provenant de la même page est reçue plus tard, la version cache peut être fournie sans faire appel au Magento.
La mise en cache permet ainsi une amélioration de la rapidité d’affichage mais soulage également la charge serveur.

Bien que magento dispose d’un système de gestion de cache en natif, il s’avère judicieux de laisser la prise en charge du cache à une application dédiée (comme Varnish) « en front » du Magento sur le même serveur ou un serveur décentralisé (et donc indépendant du Magento, avec la possibilité par exemple de faire ses propres règle d’expiration, etc).

Parmi ces solutions, nous allons détailler plus précisement le Reverse Proxy Caching .

Un proxy est un serveur entre les clients (généralement des navigateurs) et un (ou plusieurs) serveur(s). Il fait ainsi office de « tampon » : il prend en charge les requêtes des clients pour les transmettre au serveur.

Un reverse proxy (ou proxy inversé) est un type de proxy spécifique. Il accepte les requêtes du serveur et les transmets au client, par exemple d’un serveur Magento vers un navigateur web. Un firewall ou un « load balancer » peuvent aussi être considérés comme des sortes de proxy inversés.

Là où la solution de reverse proxy est interessante, c’est qu’il peut donc gérer les flux de données entre serveur et client.
Cela permet une mise en cache des pages du site entre le navigateur et le Magento, afin de les envoyer vers le navigateur sans passer par l’application Magento.
C’est pourquoi cette solution est considérée comme particulièrement efficace pour le temps de chargement de page.

Il faut cependant préciser que tout ne peut pas être mis en cache. Sur un site d’E-commerce, certaines pages ou parties de page sont forcément dynamiques, à l’exemple du panier d’achat. Cependant les pages produits et autres ressources statiques (javascripts, images…) bénéficieront de cette optimisation. De plus cette mise en place réduira considérablement la charge serveur en permettant d’éviter de générer des pages.

Cette gestion intelligente des ressources serveur permet de garder des performances optimales côté front office comme back office, même en cas de gros catalogue produits couplé à un trafic important.

Comment mettre en place la solution de Reverse Proxy Caching ?

Chez Dag Hébergement certains clients Magento (et même WordPress!) font appel à cette technologie, qui a considérablement améliorée l’optimisation des ressources serveur comme  le temps de chargement de pages.

Cette mise en place est incluse dans notre infogérance.

Une question ? Contactez nous.