如何使用memcache加快速度

Heroku原生支持memcache作为插件。 我的问题是,作为一名rails新手,我还不知道如何使用memcache来加速我最耗时的请求(我通过查看newrelic分析知道他们是哪一个)。 我们应该在Memcache之上使用像'cache-money'这样的gem吗? 有人使用act_as_cached了吗?

我知道这是一个非常微不足道的问题。 然而,在搜索了几个小时后,我找不到一个体面的教程。 任何帮助/链接表示赞赏!


您可以在Rails 2.1中观看缓存,然后在Heroku中阅读memcached文档(我想您已经阅读过)。

此外,Touch和Cache是​​非常有趣的技术,可以避免在需要刷新缓存数据时编写Sweepers以删除缓存的内容。 使用touch会自动过期缓存的数据,几乎不需要编写新的代码。

请注意,今天,Heroku memcached集成假设您正在使用Rails> = 2.3.3

主要想法是将耗时方法的结果添加到Rails.cache(它是通过其访问缓存机制的接口)。 当你获取结果时,缓存机制会搜索它是否可以找到它,或者它是否已经过期。

如果它找到它,它会以非常快的速度返回它,因为它会从缓存中获取它。

如果它没有找到它或者它已经过期(当你调用fetch时你设置了这个),它会运行实际的慢速方法来添加它或者在缓存中刷新它。

最后,除了使用memcached还是使用内置的Rails缓存外,阅读Rails文档非常有用:使用Rails缓存:概述。 除其他外,它谈到:

  • 页面缓存
  • 动作缓存
  • 片段缓存
  • 清扫
  • SQL缓存
  • 和更多 ...

  • 您可以在memcache上缓存action_cache,也可以使用Rails.cache访问memcache

    链接地址: http://www.djcxy.com/p/48085.html

    上一篇: how to use memcache to speed

    下一篇: What is the most elegant way to return a simple value in json format?