• [^] # Re: système de cache

    Posté par (site web personnel) . En réponse au journal Pourquoi réécrire LinuxFr.org ?. Évalué à 4.

    > La version actuelle avec templeet utilisait [...] la redirection des 404 vers l'appli qui générait une page statique pour la fois d'après, page supprimée à la moindre maj.

    C'est comme ça que ça fonctionne, mais quasiment toutes les templates ont maintenant la directive ~dont_cache(). Donc, quasiment toutes les requêtes passent quand même par templeet.

    Il y a 2 raisons à cela. La première, c'est que la plupart des pages contiennent des informations spécifiques à un utilisateur (au hasard, le Bienvenue dans la barre de gauche).

    La seconde, c'est qu'il n'est pas simple de faire expirer le cache. Par exemple, quand on vote sur un commentaire, ça peut changer la note moyenne des commentaires du contenu associé. Or, cette note moyenne est affichée à chaque fois que le contenu est affiché, c'est-à-dire au moins sur une dizaine de pages.

    C'est donc beaucoup plus simple de gérer le cache au niveau des ~include(). En gros, on cache le bloc HTML pour un commentaire, ou juste la première partie d'une dépêche, puis avec templeet, on reconstruit la page à partir de ces blocs (depuis le cache quand c'est possible, avec les requêtes SQL sinon).

    > Quel système de cache est utilisé dans cette nouvelle version ?

    Ça fait parti des choses qu'il me reste à faire avant de pouvoir de passer la version Rails en production ;-)