Sur Drupal Page de performances, sous le jeu de champs Cache, vous avez deux options. L'une est la durée de vie minimale du cache et l'autre est l'expiration des pages mises en cache.
Quelle est la différence entre ces deux.
J'ai fait les observations suivantes après avoir passé quelques heures. S'il y a des lacunes ou des erreurs, faites-le moi savoir. Je serai heureux de faire des éditions.
Premier observateur qu'aucune des options sous la mise en cache n'est interdépendante. S'ils l'étaient, vous les auriez vus sous différents ensembles de champs (ou comme champs dépendants). Prenez note de cette observation et nous y reviendrons plus tard.
Commençons par la première option Pages de cache pour les utilisateurs anonymes.
Lorsque vous cochez cette option, vous dites essentiellement à Drupal
Hey Beast écoute, lorsqu'un utilisateur anonyme visite mon site,
Même si vous n'activez pas le Cache Pages for anonymous users
la page peut toujours être mise en cache par des systèmes de cache externes. Par exemple: Boost
Passons maintenant aux options suivantes que vous utiliseriez généralement.
Expiration des pages mises en cache
The maximum time an external cache can use an old version of a page.
Comme Molot l'a souligné, le mot-clé est externe.public
et la valeur max-age dans l'en-tête sur la valeur spécifiée (1 jour dans ce cas).Cet en-tête indique aux systèmes de mise en cache external
de ne pas appeler le serveur pour cette page jusqu'à l'âge maximal, car ils peuvent afficher cette page à partir de leur propre cache. Après le max-age, le système de mise en cache doit vérifier avec le serveur Drupal pour voir si le contenu a changé.
S'il s'agit d'un serveur Varnish, il n'appelle pas Apache et renvoie la page depuis son cache. Supposons donc que Varnish ait mis en cache une page et que mille utilisateurs différents aient fait une demande sur cette page. Cela signifie donc que 1000 requêtes ont été traitées sans toucher une seule fois au serveur Apache.
Durée de vie minimale du cache
Si votre site n'a pas un trafic énorme ou si vous n'êtes pas sûr de ce qu'est cette valeur, il vaut mieux laisser cette valeur nulle.
Cet article a un bon aperçu de la terminologie de mise en cache de Drupal: http://www.phase2technology.com/blog/caching-in-drupal/
Résumé des points pertinents:
La durée de vie minimale du cache est souvent mal interprétée car cela signifie que "les pages seront régénérées après un laps de temps". Ce que cela signifie en réalité, c'est que les pages ne seront pas régénérées tant qu'au moins ce temps ne sera pas passé et qu'un événement d'effacement du cache ne s'est produit.
L'expiration des pages mises en cache est également parfois mal interprétée. Cette valeur contrôle ce qui est envoyé en tant que valeur max-age dans un en-tête Cache-Control et informe ainsi les serveurs proxy combien de temps ils peuvent servir la page sans demander à votre Drupal installation pour une nouvelle copie. Cette ne signifie pas que la page sera régénérée après ce délai, cela signifie simplement que le serveur proxy doit vérifier avec Drupal pour voir si une nouvelle version de la page existe après ce délai. Drupal ne régénérera une page qu'après un événement d'effacement du cache.