【问题标题】:Fragment Caching in HerokuHeroku 中的片段缓存
【发布时间】:2014-07-04 08:47:05
【问题描述】:

我在 Rails 中对缓存和 memcache 服务器/服务进行了很多试验,我正在尝试对一些复杂的视图进行分段缓存。

问题是,如果我有一个提供缓存的外部服务 (ironcache/memcachier),我当前的主机 (heroku) 仅支持片段缓存。 Heroku's caching guide

但是,使用外部缓存服务会降低我的应用程序的性能。
我的猜测是因为来自另一台服务器的许多 http 请求。

我还尝试了 heroku 中的低级缓存,并且都使用了 memcache 服务。这很好,但我必须加快我的应用程序的速度。

  1. 还有其他方法可以在 heroku 中对缓存进行分段吗?
  2. 为什么在其他服务中存储缓存时我的应用程序变慢了?
  3. 为什么需要使用外部memcache服务来对heroku中的缓存进行分片缓存不就是分片缓存存储在memory_store中吗? 低级缓存的

【问题讨论】:

  • 所以当您引入片段缓存时,您的应用程序的性能会变差?这听起来不像你这样做是正确的
  • 不,当我通过 mamcache 服务使用片段缓存时(例如通过 ironcache/memcachier)
  • 我不明白你的评论。什么时候快,什么时候慢?
  • 当我将服务用作 mem_store(将缓存存储在 Ironcache/memcachier 中)时,它往往会变慢。
  • 比没有缓存慢。是不是因为额外的http请求?

标签: ruby-on-rails ruby caching heroku


【解决方案1】:

据我了解,使用外部存储器进行缓存是具有多个测功机的应用程序的标准方法。即使 memcache 和您的应用在物理上不是同一台机器,您仍然应该获得相当快的响应,具体取决于缓存内存结构和通过网络的数据量。

您的设置可能存在其他一些问题,导致检索缓存的速度比平时慢。除了 Ironcache/memcachier 之外,也许可以尝试其他服务?

【讨论】:

    猜你喜欢
    • 2013-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-05
    • 2012-10-07
    • 1970-01-01
    • 1970-01-01
    • 2012-10-22
    相关资源
    最近更新 更多