Magento peut être lent sans configuration de cache appropriée. Dans ce guide, vous apprenez comment optimiser Magento pour une vitesse maximale.

Pourquoi le cache est essentiel

Magento est une plateforme complexe qui effectue de nombreuses requêtes base de données et calculs. Sans cache, chaque page doit être reconstruite, ce qui résulte en :

  • Temps de chargement lents (5+ secondes)
  • Charge serveur élevée
  • Mauvaise expérience utilisateur
  • Conversion plus faible

Types de cache Magento

Magento dispose de plusieurs types de cache que vous pouvez gérer :

Type de cache Description
Configuration Configuration de l'application
Layout Fichiers de mise en page
Block HTML Sortie des blocs
Collections Données de collection
Reflection Informations API
Database DDL Schéma base de données
EAV Attributs d'entité
Page Cache Cache page complète
Translations Traductions

Gérer le cache

  1. Allez dans System > Cache Management
  2. Ici vous pouvez :
    • Activer/désactiver les types de cache individuels
    • Vider (flush) le cache
    • Invalider le cache

Full Page Cache (FPC)

Le Full Page Cache stocke des pages complètes et constitue le plus grand gain de performance.

Activer le FPC

  1. Allez dans Stores > Configuration > Advanced > System
  2. Dans Full Page Cache :
    • Caching Application : Built-in Cache
    • TTL for public content : 86400
  3. Cliquez sur Save Config

FPC pour des pages spécifiques

Toutes les pages ne peuvent pas être mises en cache :

  • À mettre en cache : Page d'accueil, pages de catégorie, pages de produit
  • À ne pas mettre en cache : Panier, checkout, pages de compte

Cache Varnish

Pour une performance maximale, Varnish est recommandé :

Avantages de Varnish

  • Pages jusqu'à 300x plus rapides
  • Charge serveur réduite
  • Meilleure scalabilité

Configurer Varnish

  1. Allez dans Stores > Configuration > Advanced > System
  2. Dans Full Page Cache :
    • Caching Application : Varnish Cache
  3. Exportez la configuration VCL Varnish
  4. Demandez au support d'activer Varnish

LiteSpeed Cache

Sur les serveurs Theory7, LiteSpeed est disponible et offre un excellent cache.

Installer le module LiteSpeed

composer require litespeed/module-litemage
bin/magento module:enable Litespeed_Litemage
bin/magento setup:upgrade

Configurer

  1. Allez dans Stores > Configuration > LiteMage > Configuration
  2. Enable LiteMage : Yes
  3. Configurez le TTL du cache et les exclusions

Cache Redis

Redis améliore significativement le cache backend.

Redis pour le cache backend

Dans app/etc/env.php :

'cache' => [
    'frontend' => [
        'default' => [
            'backend' => 'Magento\Framework\Cache\Backend\Redis',
            'backend_options' => [
                'server' => '127.0.0.1',
                'port' => '6379',
                'database' => '0'
            ]
        ]
    ]
]

Redis pour les sessions

'session' => [
    'save' => 'redis',
    'redis' => [
        'host' => '127.0.0.1',
        'port' => '6379',
        'database' => '2'
    ]
]

Optimisations de performance

Bundling JavaScript/CSS

  1. Allez dans Stores > Configuration > Advanced > Developer
  2. Dans JavaScript Settings :
    • Merge JavaScript Files : Yes
    • Minify JavaScript Files : Yes
    • Enable JavaScript Bundling : Yes (production uniquement)
  3. Dans CSS Settings :
    • Merge CSS Files : Yes
    • Minify CSS Files : Yes

Optimiser les images

  1. Utilisez le format WebP si possible
  2. Configurez correctement le redimensionnement d'image
  3. Utilisez le lazy loading pour les images
  4. Implémentez un CDN pour les médias

Flat Catalog

Pour les catalogues de 1000+ produits :

  1. Allez dans Stores > Configuration > Catalog > Catalog
  2. Dans Storefront :
    • Use Flat Catalog Category : Yes
    • Use Flat Catalog Product : Yes
  3. Réindexez après activation

Mode production

Magento doit fonctionner en mode production :

bin/magento deploy:mode:set production
bin/magento setup:static-content:deploy fr_FR
bin/magento cache:clean
bin/magento cache:flush

Vérifier le mode

bin/magento deploy:mode:show

Configuration cron

Magento nécessite cron pour le cache warming et l'indexation :

* * * * * /usr/bin/php /chemin/vers/magento/bin/magento cron:run

Tester la performance

Outils

  • Google PageSpeed Insights : Score de performance général
  • GTmetrix : Analyse détaillée
  • WebPageTest : Analyse waterfall
  • New Relic : Monitoring côté serveur

Objectifs de benchmark

  • TTFB (Time To First Byte) : < 200ms
  • First Contentful Paint : < 1.5s
  • Largest Contentful Paint : < 2.5s

Besoin d'aide ?

Nous sommes là pour vous ! Si vous rencontrez un problème ou avez des questions, notre équipe de support sera ravie de vous aider personnellement. Envoyez-nous un message via le système de tickets - nous répondons généralement dans les quelques heures et sommes heureux de vous accompagner.