Vous pouvez regarder Caching in Rails 2.1 puis lire le memcached documentation (je suppose que vous avez déjà lu) dans Heroku.
Aussi, Touch and Cache est une technique assez intéressante pour éviter d'écrire des balayeurs afin de supprimer le contenu mis en cache lorsque vous avez besoin d'actualiser les données mises en cache. L'utilisation du toucher expulsera automatiquement les données mises en cache sans presque nécessiter d'écrire du nouveau code.
S'il vous plaît noter que, aujourd'hui, l'intégration de memcached Heroku suppose que vous utilisez Rails> = 2.3.3
L'idée principale est que vous ajoutez le résultat (s) de votre temps méthode pour Rails.cache (qui est l'interface à travers laquelle vous accédez à votre mécanisme de mise en cache). Lorsque vous récupérez ce (s) résultat (s), le mécanisme de mise en cache recherche pour voir s'il peut le trouver ou s'il n'a pas expiré.
S'il le trouve, il le retourne très vite car il le prend du cache.
S'il ne le trouve pas ou qu'il a expiré (vous définissez ce paramètre lorsque vous appelez fetch), il exécute la méthode lente actuelle pour l'ajouter ou l'actualiser dans le cache.
Enfin, il est très utile de lire la documentation de Rails, que vous utilisiez memcached ou la mise en cache Rails intégrée: Caching with Rails: An overview. Entre autres choses, il parle de:
- page mise en cache
- mise en cache d'action
- Fragment cache
- Sweepers
- mise en cache SQL
- et plus ...
Mise en cache est un sujet très large et vous pouvez en faire beaucoup de différents types. Memcached n'a rien de spécial. c'est juste un support de stockage pour les choses que vous voulez mettre en cache (comme mysql peut être votre stockage pour les objets que vous voulez être persistant). Un autre type de mise en cache peut être plus adapté à votre page en particulier. Dans tous les cas, vous devrez nous donner plus de détails sur votre demande lente afin d'obtenir des réponses décentes. Quel genre de page est-ce? Public, ou différent pour chaque utilisateur? La plupart du temps est-il consacré à l'interrogation de la base de données ou au rendu des vues? – tfe
+1 pour cette question. Je suis également à la recherche d'un tutoriel décent rails + memcache. –