gpt4 book ai didi

ruby-on-rails - 何时/什么在 Rails 3 中缓存

转载 作者:行者123 更新时间:2023-12-05 00:36:46 25 4
gpt4 key购买 nike

缓存是我长期以来一直忽略的东西,因为我从事的项目是在本地内联网上进行的,事件很少。我现在正在处理一个更大的 Rails 3 个人项目,我正在努力确定我应该缓存什么以及什么时候缓存。

  • 人们通常如何确定这一点?
  • 如果我知道一个网站的事件量相对较低,我是否应该只缓存每个页面?
  • 如果我有一个调用多个部分的页面,在这些部分中进行片段缓存还是在这些部分上进行页面缓存更好?

  • Ruby on Rails 指南很好地解释了 Rails 3 中的缓存如何工作,但我无法理解与之相关的决策过程。

    最佳答案

    你会想要考虑缓存几种东西:

  • 被击中很多,很少改变的请求
  • 绘制“昂贵”的请求、大量的数据库调用等。也希望这些很少改变。

  • 不能不提的缓存的另一面是过期。它也往往是更难的部分。您必须知道缓存何时不再好,并将其清除,以便生成新的内容。 Sweepers 或 Observers,取决于你如何实现你的缓存可以帮助你解决这个问题。您也可以仅根据时间值执行此操作,允许缓存具有 max-age 并在此之后无论如何清除它们。

    至于片段缓存与整页缓存,请根据这些部分的更新频率来考虑。如果页面的 3 个部分从未更新,其中一个是,也许您想缓存这 3 个部分,并允许实时获取该 1 个部分,这样您就可以获得第二个准确度。或者,如果页面的不同部分应该有不同的缓存规则:可能缓存了“时间线”部分,但缓存时间为 1 分钟。而“ friend ”部分缓存了 12 个小时。

    希望这可以帮助!

    关于ruby-on-rails - 何时/什么在 Rails 3 中缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7843163/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com