J'ai une application Rails avec une base de données mise à jour à partir d'un programme C++ externe. Je voudrais accélérer l'application en utilisant la mise en cache de fragments, mais lorsqu'un enregistrement est mis à jour, une entrée de cache de fragment correspondant doit être expirée. Des idées?Expiration d'un cache de fragments Rails à partir d'une application externe
Répondre
Si l'application C++ parle directement à la base de données, vous pouvez utiliser la mise en cache de fragments en combinaison avec cache_key.
C'est facile et intégré dans Rails. Tout ce que vous avez à faire est de vous assurer que votre application C++ met à jour le champ updated_at de l'enregistrement lorsque le contenu de l'enregistrement principal est mis à jour. Ensuite, vous pouvez étendre votre fragment à l'objet d'enregistrement et le cache expirera automatiquement lorsque l'enregistrement est modifié.
<% cache [@article, :metadata] do %>
here the content to be cached
for example the <%= @article.title %>.
:metadata is simply a name for this fragment.
<% end %>
En supposant que le record @article a été enregistré sur 2010-02-10 18:00:00, le fragment sera mis en mémoire cache à /path/to/cache/.../24-20100210180000
. Lorsque votre C++ met à jour l'enregistrement et modifie la colonne updated_at, le cache sera invalidé et la prochaine requête sera automatiquement renvoyée au contenu.
Pour plus d'informations sur la mise en cache, consultez http://railslab.newrelic.com/scaling-rails
- 1. mémoire cache de fragments de rails
- 2. Rails - le cache des fragments n'expire pas
- 3. Comment forcer le cache de fragments sur les rails à partir du calendrier cron?
- 4. Mise en cache de fragments avec Memcached
- 5. Expiration de modèles dans Rails
- 6. Lancement d'une application externe à partir de mon application
- 7. Mise en cache des fragments avec Touch
- 8. Déclencher un événement en C# à partir d'une application externe?
- 9. Expiration du cache sur les images statiques
- 10. Lancement d'une application de console externe à partir de Java
- 11. Expiration de session ASP.NET
- 12. Exécuter des commandes à partir d'un fichier externe dans Rails
- 13. comment créer xml à partir de fragments xml
- 14. Énumération des onglets du navigateur à partir d'une application externe
- 15. Démarrer une application externe à partir d'une extension Google Chrome?
- 16. Expiration des en-têtes dans Rails
- 17. cache de page dans les rails
- 18. Appel de l'application à partir de rails
- 19. Cache Appfabric (Velocity): Expiration dans un cache non expirable et dans un journal de suivi illisible?
- 20. file_store de rails 'cache
- 21. Importer à partir de lib jython externe
- 22. expiration de la session
- 23. Comment redimensionner une application d3d à partir d'une application externe. (C#)
- 24. Expiration de la session inactive d'une application tierce
- 25. Bloquer MsgBox à partir d'une application externe à l'aide de VB.Net
- 26. Expiration de l'application à l'aide de NSTimeInterval
- 27. Magento dispatching application externe
- 28. Comment ajouter une route à partir d'une application Rails
- 29. Mise en application externe
- 30. modèle de rails utilisant la hiérarchie de classe à partir d'une gemme externe?