在我正在处理的项目中,我在我的 Controller 中从外部 API 请求数据,然后显示在 View 中。我最近开始遇到由于速率限制而抛出的异常,这些异常是由对 API 的过度调用引起的。要解决这个问题,我假设我需要实现某种缓存系统。我一直在阅读 Rails 中的页面缓存,它似乎并没有解决我的问题,因为我没有使用我自己数据库中的模型。所以,我想知道是否有一种简单的方法可以定时缓存页面,以便可以经常通过 API 请求新数据。
希望这是有道理的——我是 Ruby on Rails 的新手,之前我从未使用过任何类型的缓存系统。
最佳答案
Memcached 具有您所说的基于时间的过期,我相信它非常适合缓存最常见的对象,包括页面。
它真的很容易安装,Rails 已经准备好使用它,只需为 memcached 进行一行配置。
以下截屏视频对学习 memcached 非常有帮助:
http://railslab.newrelic.com/2009/02/19/episode-8-memcached
实际上,我推荐整个系列,因为它非常有用。
这是 memcached 站点:
如果您更喜欢手动类型,则始终可以创建一个 cron 作业,每隔几分钟运行一次并生成新文件。
希望这对您有所帮助!
关于ruby-on-rails - Rails 中的定时页面缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2293783/