Taille du texte: +

joomla : la mise en cache démystifié

Joomla 1.6. fait un usage intensif de la mise en cache et d'être en mesure d'utiliser son plein potentiel, nous devons d'abord comprendre comment la mise en cache. Comme la mise en cache a été presque entièrement refait à 1,6. (La plupart du temps par l'auteur de cet article), quelques descriptions plus âgés et les typologies ne s'appliquent pas non plus.



Cache - stockage temporaire d'une unité d'information pour être réutilisés plus tard.

Pourquoi?

Principalement parce que la récupération des informations stockées est BEAUCOUP (jusqu'à 10 fois ou plus) plus rapide que la génération initiale.Si vous avez besoin d'un exemple drastique - un livre est longue cache terme de sa connaissance des auteurs. Il pourrait prendre des années à accumuler cette connaissance, lors de la lecture de cette mémoire cache est une chose beaucoup plus rapidement que nous le savons tous.

Mais revenons à Joomla - plus précisément, ce que nous traitons ici est une application Web mise en cache - la création de copies temporaires des pages statiques contraire dynamiques (ou de plus petites unités de données). La mise en cache est particulièrement approprié pour les applications web en tant que site web typique affiche le même contenu à plusieurs reprises et sans cache tout doit être généré pour la vue chaque page. Caching enregistre système temporaires de cette information générée par le code dans un objet du cache et il sert quand il est demandé par l'utilisateur suivant.



Pour comprendre cache Joomla un peu plus loin nous devons de vous familiariser avec deux concepts-types de cache et cache handlers.For faciliter la compréhension jeter un oeil à des photos qui illustrent chaque zone de couverture de type cache.





types de caches joomla





page cache

Prend des clichés de pages entières, y compris tout - composant, modules, plugins et un modèle. Il est le plus rapide, plus large et le moins approche flexible de toutes les options de mise en cache. Pour l'activer, il faut activer le plugin de base du système et ainsi de son utilisation est un site aux administrateurs le choix.





cache progressive (nouveau en 1.6.) 

. Prend instantané de chaque ensemble unique modules (généralement chaque page) affecte tous les modules - fonctionne comme couche au-dessus du cache du module et stocke un ensemble de modules à l'état rendu.

Il est activé par la mise en cache de niveau à progressive, aussi le choix d'un site aux administrateurs. Si vous avez besoin une bonne granularité sur chaque cache module, utilisez le cache de niveau conservatrice qui désactive cette couche de mise en cache (vous obtenez le même comportement que dans 1.5.).





module & cache de la vue composant

Ils forment un groupe comme ils tous les deux de créer une copie statique de la production complète d'un composant ou un module. Ce sont la plupart des types de caches généralisées, parfois égalé avec la mise en cache Joomla en général.

Il le côté positif est qu'il se comporte bien dans les termes de vitesse, mais sur un côté négatif désactive n'importe quel utilisateur <-> l'extension <-> interaction cadre jusqu'à ce qu'une copie mise en cache a expiré. Cela signifie qu'il n'est pas approprié pour tous les composants ou les modules qui réagissent aux actions des utilisateurs ou rendent fréquemment changer le contenu.

Comme copie mise en cache ne comprend que des modules ou des composants de sortie propre, tout fichier externe qui est appelé en utilisant des méthodes telles que $ document-> addStylesheet () ne seront pas inclus. Pour venir contourner cette limitation, nous avons mis en place des solutions de contournement de nombreux, mais ils représentent une sorte de Catch22 situation - des solutions de contournement besoin de ressources informatiques et ainsi de diminuer l'effet de la mise en cache.

Ce type de cache doit être mis en œuvre par les développeurs d'extensions.

 



fonction / rappel cache

Le premier des types de mise en cache flexibles qui nous permettent de différencier entre les différentes parties de l'extension et la mémoire cache uniquement les parties qui sont mis en cache, tout en gardant les parties dynamiques non mise en cache. Il met en cache les résultats des appels de fonction dans le code.





cache de sortie

Caches de sortie d'une partie du script. Il s'agit essentiellement mise en mémoire tampon de sortie avec la mise en cache et n'est pas souvent utilisé.



cache raw

Caches des unités de données. Entièrement contrôlée par le codeur - ce que, lorsque pour stocker, comment classer les unités stockées (identifiant de cache).Très utile lorsque nous avons affaire à nombre fini d'unités de données réutilisables.

Ce type est utilisé dans le noyau Joomla pour les opérations de framework de cache: liste des composants, la liste des modules, l'arborescence des menus, langues disponibles, les groupes d'utilisateurs, html etc rendu





qu'est-ce qui se passe quand nous avons plusieurs caches travail en même temps?

Types de mise en cache fonctionnent comme non-couches transparentes sur le dessus les uns des autres (à l'exception du module / cache vue des composants qui fonctionnent en parallèle). Pour comprendre, il faut imaginer que nous nous sommes affichage d'une page Web à partir du cache au-dessus et page représente la couche supérieure, tandis que la fonction / sortie / cache premières représentent la couche inférieure. Qu'est-ce qui se passe est que chaque couche supérieure couvre ceux ci-dessous la pose. Donc, généralement, lorsque vous utilisez le cache de page toutes les autres caches ne sont pas pertinents - à une exception près - une situation où nous utilisons des durées différentes pour le type de cache différent. Par exemple, nous pourrions mettre en cache de pages vues rendus pendant une courte période et les images de cache pour un temps très long - dans ce cas point de vue la plupart du temps est rendue, elle tire des images à partir du cache de l'image.











manipulateurs cache

Gestionnaire de cache sont des travailleurs lourds. Ils sont ceux qui font le sale boulot et stocker des informations sur des supports choisis. Pour être en mesure d'utiliser le cache, nous devons avoir au moins sur la gestion du cache disponible.

Par défaut Joomla utilise gestionnaire de cache de fichiers, qui utilise des fichiers pour stocker des informations. Cache de fichiers fonctionne de manière fiable, mais il il est relativement lent par rapport à la mémoire handlers.If fichier de cache basée n'est pas disponible, vous devez fixer vos autorisations sur les dossiers de cache afin que le serveur web puisse écrire dedans. Si vous ne savez pas comment faire ce que vous demandez fournisseur d'hébergement.

Dans Joomla 1.6. il ya 7 différents gestionnaires: cache de fichiers et de mise en cache des gestionnaires Lite qui utilisent des fichiers pour le stockage et l'APC, eAccelerator, Memcached, xcache et WinCache utilisation de la mémoire que. Pour utiliser le cache de fichiers, mais tout, vous avez besoin d'extension PHP approprié est installé. Pour utiliser Memcached vous aurez également besoin d'au moins un serveur de cache en cours d'exécution.

Remarque - certaines de ces extensions ne sont pas compatibles, d'être sur le côté sécuritaire d'utiliser une seule base de la mémoire cache à la fois.


Cache Settings - set it to On - Progressive Caching if you’d like maximum caching and fastest Joomla. Set it to On - Conservative if you’d like to disable modules caching. In any case there is cache time in minutes. During this time changes may not appear because cached copies will be served to the viewers.

Le cache "progressif" permet le cache le plus rapide, mais aussi le plus gourmand en espace disque. Très efficace sur des petits sites, déconseillé sur les très gros sites.

Le cache "conservateur" lui ne cache que certains éléments du site, peu susceptibles de modifications fréquentes. Le site est un peu moins rapide, mais on évite le monceau de cache sur les très gros sites.

0
Billet pris pour le Joomladay de Nice
 

joomla-conseil.com n'est ni affilié à Open Source Matters ou au projet Joomla!® ni approuvé par eux. Le nom Joomla! et le logo sont utilisé sous licence limitée accordée par Open Source Matters, propriétaire de la marque aux États-Unis et autres pays. joomla-conseil.com is not affiliated with or endorsed by The Joomla! Project™. Use of the Joomla!® name, symbol, logo and related trademarks is permitted under a limited license granted by Open Source Matters, Inc.