Différence entre les options de cache standard


12

Joomla! avoir 3 façons différentes pour la mise en cache:

  • "Mise en cache conservatrice" (en configuration globale)
  • "Mise en cache progressive" (en configuration globale)
  • plugin "Système - Cache"

J'ai les questions suivantes:

  • Quelles sont les différences?
  • Quand dois-je utiliser quelle option?
  • Dois-je activer le plug-in de cache lorsque j'ai déjà activé l'option dans la configuration?
  • Quelle bonne façon de configurer le système de cache par défaut?

Réponses:


5

En plus de la réponse de Shyam ...

Dans Global Configuration-> Cache...

  • La mise en cache conservatrice est une mémoire cache générée pour chaque vue d'un composant / module
  • La mise en cache progressive est une mémoire cache générée pour chaque vue d'un composant / module sur une base individuelle par utilisateur

Il s'agit d'un cache de vues au niveau de l'extension. Il doit être implémenté par le développeur de l'extension pour avoir un effet.

Remarque: les utilisateurs connectés ne verront jamais le contenu mis en cache via ces moyens.

Vous pouvez remplacer la mise en cache d'un module individuel si la «mise en cache conservatrice» est activée en désactivant la mise en cache dans les options avancées du module. Vous NE POUVEZ PAS remplacer la mise en cache du module par module si la «mise en cache progressive» est définie.

Le plugin System - Cache génère des caches de page pour chaque page entière dans /cache.

Pour la plupart des scénarios, l'activation du plugin System - Cache est suffisante. Si vous ne souhaitez mettre en cache que des modules / composants particuliers (dont la mise en cache est implémentée), désactivez le plug-in et activez la mise en cache conservatrice dans la configuration globale. Vous pouvez ensuite définir des exceptions en désactivant la mise en cache dans les options avancées d'un module.

Notez que toute mise en cache est un équilibre entre le temps et l'espace - la mise en cache pleine page réduira la charge de la base de données et donc les temps de chargement de la page, mais augmentera l'utilisation de l'espace disque.

Vous pouvez trouver des analyses et des références supplémentaires du système de mise en cache ici , ainsi que les documents Joomla Cache pour les administrateurs et cet excellent article détaillant les différentes options et mises en garde applicables.


Mais j'utilise un cache progressif et il respecte les paramètres de cache du module, donc je pense que vous devriez essayer cela et corriger votre réponse.
jackJoe

Êtes-vous sûr? Tous les sites que j'ai examinés Progressive cachingremplaceront tous les paramètres au niveau du module (en particulier le troisième tableau sous «Résultats bruts» sur inmotionhosting.com/support/edu/joomla-25/caching/… ). Je vais essayer de tester cela sur une installation propre aujourd'hui pour vérifier dans un sens ou dans l'autre.
codinghands

1
à propos de: "Mise en cache conservatrice et activation du système - Le plugin de cache est suffisant" - si cela a un sens réel? car comme vous l'avez expliqué: le plugin fait du cache pour toute la page, donc (si je comprends bien) dans ce cas Joomla! ne pas exécuter une extension et donc la mise en cache conservatrice .. ou je comprends quelque chose de mal?
Fedik

1
Je viens de l'essayer et dans certaines situations, cela fonctionne et d'autres non! si vous incluez le module dans un article (ex: par sa position) il respecte le paramètre no cache, mais dans une position normale du module il l'ignore! Je jurerais que cela a fonctionné pour un module normal, mais je viens de l'essayer à nouveau et ça ne marche pas.
jackJoe

@Fedik Vous avez tout à fait raison, un malentendu de ma part. Maintenant mis à jour ma réponse.
codinghands

3
  1. Différence entre la mise en cache -

    La mise en cache conservatrice est le type standard de mise en cache. Voici comment ça fonctionne:

    Un visiteur visite une page de votre site Web.

    • Joomla vérifie s'il existe une version non expirée de cette page dans son répertoire de cache.
    • Si la page en cache existe (et qu'elle n'est pas expirée), alors Joomla la servira au visiteur
    • sinon, une version mise en cache de la page est créée, et cette version mise en cache sera servie au visiteur, et à tout autre visiteur conséquent, tant qu'elle (par «elle» nous entendons la page) n'est pas expirée.

    Le scénario ci-dessus est typique et représente la manière dont la plupart des développeurs implémentent la mise en cache.

    La mise en cache progressive fonctionne de la manière suivante:

    • Un visiteur visite une page de votre site Web.
    • Joomla vérifie s'il existe une version en cache de cette page pour ce visiteur et qu'elle n'est pas encore expirée.
    • Si cette page en cache existe, elle sera servie au visiteur, sinon, Joomla créera la page en cache pour ce visiteur spécifique, puis la lui servira.
    • Si un autre visiteur (qui n'a jamais été sur cette page) visite cette page, Joomla ne diffusera pas la page en cache du visiteur précédent, mais créera une version en cache de cette page spécifiquement pour cet utilisateur, puis la servira à lui.

    Comme vous pouvez le voir, la mise en cache progressive n'offre qu'une amélioration des performances

    • si le même visiteur visite la même page pendant la durée de vie de la version en cache de la page.
    • Dans la plupart des scénarios, la mise en cache progressive entraîne une énorme baisse des performances bien pire que la désactivation du cache, simplement parce que pour presque chaque visite, Joomla doit traiter la demande, créer la version mise en cache de la page, puis servir la page au visiteur (au lieu de simplement traiter la demande et de diffuser la page dans le scénario où le cache est désactivé).
    • Oh, et n'oubliez pas tous les fichiers de cache générés par Joomla - vous ne pouvez imaginer le nombre de ces fichiers que vous aurez dans votre dossier de cache que si vous avez un site Web d'actualités à fort trafic (qui contient de nombreuses pages).

    Vous vous demandez maintenant dans quelles circonstances la mise en cache progressive est-elle utile? Eh bien, imaginez que vous ayez un site Web vidéo (similaire à YouTube). Vous souhaitez afficher les pages personnalisées de chaque visiteur en fonction de son emplacement et / ou des paramètres du navigateur et / ou des plugins installés. Ainsi, pour chaque page que les visiteurs chargent, vous utilisez ces informations pour générer une version personnalisée de cette page et vous la mettez en cache. Si le visiteur visite à nouveau la même page, Joomla n'a pas besoin de refaire le travail pour générer la page personnalisée.

    Bien sûr, il existe de nombreux scénarios dans lesquels la mise en cache progressive est vraiment utile, mais à notre avis, la mise en cache progressive ne doit être envisagée que si le site Web reçoit de nombreux visiteurs et si ces visiteurs sont principalement des visiteurs récurrents. Son utilisation dans d'autres cas entraînera un impact significatif sur les performances du site Web. Ref: Lire Joomla Caching en profondeur

  2. Conservateur est recommandé.

  3. Le plugin de cache fournit un cache de page complet lorsqu'il est activé.

3
Pourriez-vous modifier cette réponse pour que les blocs préformatés soient plutôt des citations de blocs? Veuillez également noter la source d'origine de cette information ( itoctopus.com/… et citée dans stackoverflow.com/questions/12739297/… ). De plus, vous recommandez une mise en cache progressive même si cela n'est mentionné dans l'article que pour des cas d'utilisation très spécifiques ...?
codinghands

pas très clair, vous avez dit que: Conservative / Progressive "vérifie si une version en cache de cette page existe" et sur le plugin "Cache plugin fournit un cache de page complet" .. donc toutes ces options et le plugin font la mise en cache pour la sortie de la page entière ou?
Fedik

ok, je vois une autre réponse;)
Fedik

Réponse mise à jour n ° 2 Changée en conservatrice.
Shyam
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.