Activer / désactiver le cache Joomla pour améliorer les performances [Comment]

cache joomla

La puissance d'un CMS comme Joomla est qu'il est alimenté par une base de données, ce qui rend l'ensemble du site et du contenu dynamiques. Mais en termes de performances, cette infrastructure de base de données est le talon d'Achille. La récupération du contenu de la base de données à chaque appel est un goulot d'étranglement des performances. Mais il existe un excellent compromis, en utilisant le cache Joomla.

Dans cet article, nous allons fournir le guide ultime pour utiliser plusieurs formes de cache Joomla pour donner à votre site Web une amélioration instantanée et excellente des performances.

Qu'est-ce qu'un cache?

Selon Wikipédia:

Un cache est un composant matériel ou logiciel qui stocke des données afin que les futures demandes de ces données puissent être traitées plus rapidement; les données stockées dans un cache peuvent être le résultat d'un calcul antérieur ou d'une copie de données stockées ailleurs. UNE hit de cache se produit lorsque les données demandées peuvent être trouvées dans un cache, alors qu'un cache manque se produit quand il ne peut pas. Les hits du cache sont servis en lisant les données du cache, ce qui est plus rapide que de recalculer un résultat ou de lire à partir d'un magasin de données plus lent; ainsi, plus le nombre de requêtes pouvant être servies à partir du cache est élevé, plus le système fonctionne rapidement.

Mais qu'est-ce que cela signifie en termes de Joomla?

Lorsqu'un visiteur accède à votre site Web, Joomla exécute généralement une série de requêtes sur la base de données pour récupérer toutes les informations, telles que les menus, le contenu, les modules et autres contenus dynamiques, et les restituer à la volée.

À mesure que la quantité de données dans votre base de données augmente ou que votre site attire de plus en plus de visiteurs, les performances de la configuration globale commencent à se dégrader. Même avec peu d'utilisateurs, sur l'hébergement mutualisé, les performances peuvent être lentes, que votre site reçoive ou non beaucoup de visiteurs.

Lorsque le cache Joomla est utilisé, au lieu de frapper la base de données MySQL avec les mêmes requêtes encore et encore, votre premier appel stocke les données dans un ensemble de fichiers locaux (dans le répertoire du cache Joomla). Les appels suivants récupéreront le contenu de ces fichiers, plutôt que de la base de données.

En effet, la lecture des données à partir d'un fichier local est plusieurs fois plus rapide que la lecture à partir d'une base de données.

Cela signifie que l'ensemble du site Web sera chargé presque instantanément et fonctionnera beaucoup mieux. Votre site Web sera plus rapide et pourra prendre en charge plus d'utilisateurs simultanés.

Voici à quoi ressemble tout le concept dans une image:

flux de travail de mise en cache

Veuillez noter que ceci est différent de la mise en cache du navigateur - la mise en cache du navigateur est recommandée par le serveur Web (mais effectuée par le navigateur local). La mise en cache côté serveur, en revanche, est la mise en cache réelle des ressources et du code HTML créés sur le serveur Web.

Si vous souhaitez en savoir plus sur la façon de tirer parti de la mise en cache du navigateur, lisez cet article ici.

Bien sûr, la SEULE façon dont vous pouvez vraiment améliorer les performances est de passer à un serveur d'hébergement plus rapide. Jettes un coup d'oeil à notre hébergement VPS InMotion revoir ici.

Comment activer le cache dans Joomla

La mise en cache est une fonction implémentée dans le noyau Joomla. Par conséquent, l'activation du cache Joomla principal est très simple.

Extrait du Configuration globale, cliquer sur Système Tab, et sur le côté droit, il y a le Paramètres du cache .

Cliquez sur le menu déroulant et sélectionnez ON - Mise en cache conservatrice or ON - Mise en cache progressive dans les paramètres du cache, et mettez une quantité raisonnable en quelques minutes. 60 minutes devraient être le minimum pour la plupart des sites Web.

Activer le cache joomla

Mise en cache conservatrice vous permet de spécifier que des modules spécifiques ne sont pas mis en cache (dans le paramétrage des modules lui-même).

Mise en cache progressive remplace ce paramètre et met toujours en cache tous les modules. Nous avons tendance à utiliser nous-mêmes la mise en cache conservatrice afin de conserver la possibilité de décider de ne pas mettre en cache un module spécifique.

En général, nous recommandons que cette durée soit plus longue, généralement 240 minutes (4 heures) ou même plus. Vous pouvez toujours vider (ou réinitialiser) le cache si vous souhaitez l'actualiser.

Une fois que vous appuyez sur Appliquer, la mise en cache Joomla pour les modules et les composants sera activée. toutefois ce paramètre ne suffit pas, il nous reste encore un pas à faire! Nous souhaitons toujours activer la mise en cache des pages.

Pour activer la mise en cache des pages Joomla, vous devez accéder à Extensions> Plugins, recherchez Cache et cliquez sur Système - Cache de page. Vous devez vous assurer que ce plugin est activé. Vous pouvez également choisir de définir la mise en cache du navigateur en activant le Utiliser la mise en cache du navigateur interrupteur.

Vous pouvez également choisir d'exclure des éléments de menu spécifiques de la mise en cache, par exemple, ce qui suit exclut le menu Contactez-nous.

activer le plugin de cache de page système joomla

S'il y a des pages que vous souhaitez exclure de la mise en cache, vous pouvez accéder à l'onglet Avancé et spécifier chaque URL que vous souhaitez exclure de la mise en cache. Vous devez spécifier chaque URL que vous souhaitez exclure de la mise en cache, sur une ligne distincte.

Les expressions régulières sont également prises en charge, par exemple, about \ - [az] + exclura toutes les URL qui ont 'about-', telles que 'about-us', 'about-me', 'about-joomla' etc while / component / users / exclura toutes les URL contenant / component / users /.

Une fois que vous avez activé et enregistré, vous devriez voir un temps de chargement de la page Web nettement amélioré.

Si vous utilisez un outil de test de vitesse de page tel que https://webpagetest.org/ vous devriez voir une différence flagrante, surtout si vous avez également activé la mise en cache du navigateur.

Vous devriez, en particulier, remarquer une différence marquée dans le Time to First Byte:

collectiveray test de performances des pages Web

 

Si votre hôte Joomla le prend en charge, comme l'hébergement de CollectiveRay.com - vous souhaiterez peut-être également activer Memcache pour rendre votre site Web Joomla encore plus rapide !

Comment effacer ou vider le cache Joomla

Lorsque vous avez activé le cache Joomla, le contenu sur le front-end de votre site ne sera pas actualisé jusqu'à ce que le temps de mise en cache expire en fonction de vos paramètres. 

Alors, que faites-vous si vous souhaitez réinitialiser le cache? C'est une procédure assez simple. Allez simplement à Système> Vider le cache, et cliquez sur Supprimer tout. Cela videra tout le cache Joomla et le contenu sera maintenant mis à jour avec le nouveau contenu.

Vous pouvez simplement vider uniquement des parties spécifiques du cache, en cochant la case appropriée et en cliquant sur Supprimer.

Vider le cache Joomla

Plugin de cache Joomla alternatif

Un problème que nous rencontrons avec le cache natif de Joomla est que vous ne pouvez pas réinitialiser une seule page. Pour les sites qui ont des centaines, voire des milliers de pages, la réinitialisation de tout le cache à chaque fois que vous effectuez un petit changement commence à devenir un goulot d'étranglement, surtout si vous avez beaucoup de trafic.

Dans ce cas, nous vous recommandons d'opter pour un plugin de cache Joomla alternatif qui vous permet de réinitialiser le cache de page au niveau d'une URL ou d'une page.

Notre plugin de cache Joomla alternatif préféré est JotCache. Outre les paramètres de mise en cache avancés, vous pouvez également réchauffer le cache (c'est-à-dire explorer toutes les pages afin qu'elles soient placées dans le cache avant qu'un utilisateur ne les accède, vider le cache d'une seule page et exclure des URL spécifiques ou des composants entiers. de la mise en cache. Par exemple, vous souhaiterez peut-être exclure votre composant Virtuemart de la mise en cache, ou votre module / composant utilisateur.

Consultez les paramètres avancés ici:

jotcache exclure l'URL

Et voici l'écran qui vous permet de réinitialiser ou de vider le cache d'une seule page uniquement:

vue de gestion des composants jotcache

Découvrez JotCache

Comment activer Joomla Memcached

L'une des corrections que nous avons eues dans un passé récent est une fixation pour rendre notre site de chargement incroyablement rapide - et c'est là que nous avons entendu parler pour la première fois de Joomla Memcache (d).

Si cela est pris en charge par l'infrastructure du serveur, nous souhaitons l'activer. Par exemple, certains de nos sites qui sont sur SiteGround, activez-le car cela donne un bon coup de pouce à la vitesse. Incidemment, nous aimons le serveur configuré à SiteGround. Par défaut, faire passer votre site d'un service d'hébergement partagé bon marché à SiteGround verra le site de chargement réduit d'au moins 2 secondes (sans autre changement).

Cela signifie qu'ils configurent très bien leurs serveurs. Mais il y a plus pour rendre votre site rapide. C'est là que Joomla Memcached entre en jeu.

Outre la configuration par défaut, SiteGround offrir trois niveaux de cache pour rendre votre site plus rapide

  1. Cache statique - met en cache votre contenu statique (similaire à ce que ferait un CDN)
  2. Cache dynamique - Il crée des copies du contenu dynamique de votre site Web et les stocke dans la RAM du serveur. Cela nécessite leur propre plugin personnalisé pour bien s'interfacer avec votre site et le serveur sur lequel il est hébergé
  3. La technologie Joomla Memcached accélère les appels de base de données, les appels d'API et le rendu de page en stockant des données et des objets en mémoire pour réduire le nombre de requêtes sur une base de données. SiteGround est la seule entreprise qui applique l'algorithme Memcached sur un environnement de serveur partagé.

 

La grande chose est que Joomla prend en charge Memcache par défaut, mais comme cela nécessite quelques ajustements, vous ne le trouverez pas dans les paramètres de cache normaux dans la configuration globale.

Comme vous pouvez le voir ci-dessous, les paramètres memcached de Joomla 3 sont cachés (vous n'avez pas d'option memcached ci-dessous) et doivent être activés en faisant un petit ajustement dans le fichier configuration.php.

 Paramètres de cache Joomla par défaut

 

Pour activer Memcache, vous devrez éditer votre Configuration.php et éditer les deux variables suivantes:

public $ caching = '0';
public $ cache_handler = 'fichier';

à:

public $ caching = '2';
public $ cache_handler = 'memcache';
public $ memcache_server_host = 'localhost';
public $ memcache_server_port = 'xxxxxx'

 où xxxxxx est un port spécifié par votre serveur d'hébergement. Vérifiez les informations auprès de votre serveur d'hébergement.

Paramètres de Joomla Memcache

Paramètres de Joomla Memcache

  

Une fois cela fait, votre Joomla est désormais memcaché et vous devriez constater une autre amélioration du temps de chargement de votre site Web. Ceci est particulièrement utile pour les sites Web très fréquentés. Assurez-vous de vérifier si votre site prend en charge Memcached - si ce n'est pas le cas, vous devez donner SiteGround un regard ;)

Il existe de nombreux autres articles sur les performances sur ce site, l'un des plus populaires est de savoir comment corriger l'erreur nommée, tirer parti de la mise en cache du navigateur - nous avons une explication complète sur CollectiveRay.

 

Laissez-nous vous aider à mieux gérer votre Joomla

Joomla

Bouton ebook gratuit de conseils Joomla

Activez la mise en cache Joomla pour un site Web Joomla plus rapide

Comment activer PHP OpCache pour Joomla

Les points ci-dessus devraient déjà avoir amélioré le temps de chargement et d'exécution de votre site. Mais il y a encore une chose qui retarde votre temps de chargement.

C'est généralement le temps qu'il faut pour exécuter le code PHP lui-même. Voir, PHP est un langage de programmation qui est exécuté ligne par ligne. Le serveur traduit généralement le code PHP en instructions exécutables par la machine, puis les exécute.

Cependant, lorsqu'il s'agira d'exécuter à nouveau les instructions, elles seront à nouveau traduites. Ainsi, chaque fois que le même morceau de code est exécuté, il doit être traduit à nouveau.

Il s'agit d'un goulot d'étranglement des performances qui peut être résolu par quelque chose appelé la mise en cache OpCode ou OpCaching. Lors de l'utilisation de la mise en cache OpCode, un nouveau type de cache est créé qui stocke le code machine précédemment traduit de sorte que lorsque la ligne doit être exécutée à nouveau, le code exécutable par machine est déjà disponible.

Ci-dessous, vous pouvez voir un diagramme de la façon dont cela fonctionne dans la vie réelle:

Mise en cache de l'opcode PHP

La mise en cache OpCode nécessite le support de votre serveur d'hébergement. Si votre site fonctionne sur CPanel et WHM, vous devrez obtenir un accès ROOT au WHM et activer PHP-FPM ou un autre package de mise en cache OpCode. 

Cela diffère également entre PHP 7.2 et PHP 7.3 - il serait préférable de se renseigner auprès de votre hébergeur pour savoir si cela est possible et comment le faire. Nous utilisons un VPS InMotion, nous avons donc le contrôle total du service, et notre configuration actuelle utilise PHP-FPM.

Si vous avez un accès ROOT à WHM, allez dans PHP MultiPHP Manager et installez un package avec PHP-FPM.

Une fois que vous avez activé cela, vous pourrez voir les informations suivantes dans les informations PHP dans Joomla. Vous pouvez le trouver sous Système> Informations système> Informations PHP

Vous pouvez voir les hits du cache, c'est une indication que PHP récupère les OpCodes du cache sans les recréer à partir de zéro à chaque fois.

mise en cache de l'opcode zend joomla

Option de mise en cache alternative - Serveur LiteSpeed

Encore une fois, si vous avez un VPS en place, vous pouvez avoir beaucoup plus de contrôle et obtenir de meilleures performances de votre serveur. 

L'une des techniques avancées que nous avons appliquées pour rendre notre site incroyablement plus rapide consiste à utiliser le serveur LiteSpeed ​​au lieu d'Apache ou NGINX. LiteSpeed ​​est un serveur Web d'entreprise qui remplace Apache.

Cela signifie que vous pouvez conserver toute la configuration pour Apache, mais obtenir un temps d'exécution beaucoup plus rapide. 

LiteSpeed ​​intègre la mise en cache OpCache et Page en tant que composant Joomla spécifique. Il est livré avec son propre composant de mise en cache avancé qui vous permet de vider uniquement des pages uniques, de sorte que si vous mettez à jour une page, vous n'avez pas à invalider le cache complet.

Options de cache LiteSpeed ​​Joomla

Il existe de nombreuses options de mise en cache avancées que vous pouvez utiliser, nous avons utilisé ce serveur pour obtenir une vitesse de chargement de site Web incroyable. Le serveur LiteSpeed ​​coûte 10 $ / mois, mais nous pensons que c'est un excellent investissement.

Découvrez le serveur LiteSpeed ​​maintenant

Points de note:

Lorsque vous activez le cache Joomla, vous remarquerez peut-être que votre "nombre de coups" n'augmente plus à chaque coup. Essentiellement, étant donné que vous stockez une copie du contenu pendant un certain temps, les hits n'augmenteront qu'à chaque expiration du cache. Bien que cela puisse sembler un inconvénient, nous pensons que vous devriez ignorer complètement le nombre de visites en ce qui concerneless d'activer ou non le cache Joomla. Le nombre de hits est faussé et inexact pour diverses raisons

1. Ils sont gonflés par vos propres coups

2. Ils sont gonflés par des robots, des robots d'exploration et d'autres visiteurs "irréels" ou "fantômes", ce ne sont pas des visiteurs réels de vos sites. Ce ne sont que des scripts effectuant leurs tâches de robot. Penser à ceux-ci comme de vraies personnes lisant vos messages conduira à un scénario irréaliste

3. Les services tels que Google Analytics sont beaucoup plus précis dans la gestion des scripts et la création d'une analyse détaillée et du profil des visiteurs de votre site Web. Cela vous fera beaucoup plus de bien si vous utilisez un script tel que Google Analytics pour cela. Vous pouvez utiliser notre Plugin Joomla Google Analytics pour faire ça.

Comme vous pouvez le voir sur notre site, nous avons désactivé la plupart des endroits où les hits Joomla apparaissent, car nous pensons qu'ils sont utilisésless, littéralement un gaspillage de ressources. Si vous voulez savoir qui visite votre site, utilisez Google Analytics. Si vous voulez impressionner vos visiteurs avec le nombre de pages vues que vous avez, ajoutez des boutons sociaux. Ils sont beaucoup plus enclins à générer beaucoup de trafic et, bien sûr, ils sont en fait précis.

Joomla 1.5

L'activation du cache Joomla est également simple. Du Configuration globale, cliquer sur Système Tab, et sur le côté droit, il y a le Paramètres du cache section. Cliquez sur Oui dans les paramètres du cache et mettez une quantité raisonnable en minutes (60 minutes devraient être assez bonnes pour la plupart des sites Web). Une fois que vous appuyez sur Appliquer, la mise en cache sera activée.

Joomla 1.0 

Le cache Joomla standard est activé à partir de Site> Configuration globale> Système> Paramètres du cache (ou Site> Configuration globale> onglet Cache pour Joomla 1.0), et marquez-le comme activé.

Bien qu'il existe des composants écrits pour la mise en cache, la mise en cache prête à l'emploi donnera à votre site Web un coup de pouce instantané.

Foire aux Questions

Qu'est-ce qu'un cache?

Un cache est un mécanisme qui stocke une copie temporaire du contenu sur un stockage rapide local (tel qu'un disque ou une mémoire) afin que le serveur n'ait pas à récupérer le contenu de la base de données chaque fois qu'un visiteur accède à un site Web. Cela rend le temps de chargement d'un site beaucoup plus rapide.

Comment activer le cache Joomla?

Il existe différentes options pour activer le cache Joomla. La méthode la plus simple consiste à activer cela via le noyau Joomla, dans la configuration globale, sous Système dans la section Paramètres du cache. Activez simplement le cache activé - Mise en cache conservatrice. Vous devez également activer le plugin de cache de page sous Extensions> Plugins pour la mise en cache au niveau de la page. Vous devriez également consulter cet article pour plusieurs autres options avancées de mise en cache.

Comment effacer le cache Joomla?

Pour effacer le cache Joomla, allez simplement dans Système> Effacer le cache et cliquez sur Supprimer tout.

Conclusion

Ci-dessus, nous avons vu les différentes façons d'activer le cache Joomla, à la fois à partir du noyau ou en utilisant des composants externes et avancés pour rendre votre site Web plus rapide. Écrivez-nous et faites-nous savoir si nous avons manqué quelque chose.

 

À propos de l’auteur
David Attar
David travaille dans ou autour de l'industrie en ligne et numérique depuis 21 ans. Il possède une vaste expérience dans les secteurs des logiciels et de la conception Web utilisant WordPress, Joomla et les niches qui les entourent. Il a travaillé avec des agences de développement de logiciels, des éditeurs de logiciels internationaux, des agences de marketing locales et est désormais responsable des opérations marketing chez Aphex Media, une agence de référencement. En tant que consultant numérique, son objectif est d'aider les entreprises à obtenir un avantage concurrentiel en utilisant une combinaison de leur site Web et des plateformes numériques disponibles aujourd'hui. Son mélange d'expertise technologique combiné à un fort sens des affaires confère un avantage concurrentiel à ses écrits.

Encore une chose ... Saviez-vous que les personnes qui partagent des informations utiles comme cet article ont l'air géniales aussi? ;-)
Veuillez laisser un incontournable commentez vos pensées, puis partagez-les sur votre ou vos groupes Facebook qui trouveraient cela utile et récoltons ensemble les avantages. Merci d'avoir partagé et d'être gentil!

Divulgation: Cette page peut contenir des liens vers des sites externes pour des produits que nous aimons et que nous recommandons sans réserve. Si vous achetez des produits que nous suggérons, nous pouvons percevoir des frais de parrainage. Ces frais n'influencent pas nos recommandations et nous n'acceptons pas les paiements pour les avis positifs.

 

qui sommes nous?

CollectiveRay est dirigé par David Attard - travaillant dans et autour du créneau de la conception de sites Web depuis plus de 12 ans, nous fournissons des conseils pratiques aux personnes qui travaillent avec et sur des sites Web. Nous gérons également DronesBuy.net - un site Web pour les amateurs de drones.

David Attard

 

 

Auteur (s) présenté sur:  Logo du magazine Inc   Logo Sitepoint   Logo CSS Tricks    logo webdesignerdepot   Logo WPMU DEV   et beaucoup plus ...