2010-02-19 58 views
1

在我正在开发的一个项目中,我向控制器中的外部API请求数据,然后将其显示在视图中。最近我开始遇到由于过度调用API而导致的速率限制引发的异常。为了解决这个问题,我假设我需要实现某种缓存系统。我一直在阅读页面缓存在rails中,它似乎并没有解决我的问题,因为我不使用我自己的数据库中的模型。所以,我想知道是否有一种简单的方法来定时缓存页面,这样可以经常通过API请求新数据。Rails中的计时页面缓存

希望这是有道理的 - 我对Ruby on Rails相当新,并且从未使用过任何类型的缓存系统。

回答

3

Memcached具有您所谈论的基于时间的过期时间,对于缓存大多数常见对象(包括页面)来说,它非常出色,我相信。

安装起来非常简单,Rails已准备好将其与memcached的单行配置结合使用。

下面的截屏是非常有益的学习memcached的:

http://railslab.newrelic.com/2009/02/19/episode-8-memcached

其实,我建议全系列,因为它是相当有用的。

这里的memcached的网站:

http://memcached.org

如果你更多的是手动型,你总是可以创建运行一次,每隔几分钟,并生成新文件cron作业。

希望这会有所帮助!

+0

谢谢 - 这似乎是我正在寻找 – mportiz08 2010-02-19 07:38:35

0

如果您想要基于时间缓存,您可以使用etag。看看它在docs