Question

Nous utilisons des modèles Smarty sur notre site LAMP, mais ma question s’appliquerait également à un site utilisant Memcached (que nous prévoyons également de mettre en ligne). Beaucoup de pages de notre site généré par les utilisateurs ont des vues différentes selon qui les regarde. Par exemple, une liste de commentaires où vos propres commentaires sont mis en évidence. Il faudrait un identifiant de cache unique pour chaque utilisateur connecté pour cette vue spécifique. Ma question est, dans ce scénario, ne vous cache même pas ces vues? Ou encore, la surcharge liée à la création / utilisation du cache (pour smarty ou memcached) est-elle suffisamment basse pour que vous puissiez toujours voir un avantage pour le cache?

Était-ce utile?

La solution

À moins que des utilisateurs individuels ne demandent les pages encore et encore, cela ne sert à rien de mettre ce genre de choses en cache, et je m'attends à ce que la surcharge de la mise en cache dépasse largement les avantages en termes de performances, tout simplement parce que le taux d'accès au cache sera faible.

Vous feriez peut-être mieux de rechercher dans la mise en cache des fragments de votre site qui ne dépendent pas de l'utilisateur individuel, ou des fragments qui seront identiques pour un grand nombre d'impressions de page (par exemple, un contenu identique pour un grand sous-ensemble de pages). vos utilisateurs).

Par exemple - sur cette page, vous voudrez peut-être mettre en cache la liste des questions connexes, ou les informations de balise, mais il est probablement inutile de mettre la barre supérieure en cache avec des informations de réputation trop agressives, car elles seront demandées relativement rarement.

Autres conseils

Si le code de la vue n'est pas trop compliqué, cachez simplement les données et générez la vue à chaque fois.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top