【问题标题】:Refreshing RSS feeds at near-realtime intervals以近乎实时的间隔刷新 RSS 提要
【发布时间】:2011-07-11 22:27:23
【问题描述】:

我有一个可以获取几百个 RSS 提要的系统。目前它们的刷新周期为 10 分钟,但我希望更快。以近实时/推送间隔获取 RSS 源的策略是什么?

我遇到的一些解决方案:

  • 在 1 分钟内执行一次提取;如果没有变化,则在 2、4、8 等处再次获取。
  • 找到 RSS 提要的平均更新间隔/方差,并将它们放在一个桶中(这个每 3 分钟更新一次,所以每 1 分钟检查一次;这个每周更新一次,所以做一个每天检查等)

【问题讨论】:

    标签: rss feed


    【解决方案1】:

    没有办法让“拉动”快速有效。您要么更频繁地轮询(但效率更低),要么通过减少轮询来提高效率。

    获得近乎实时体验的唯一方法是在正确的时间进行投票:)

    幸运的是,一些发布者(越来越多!)使用 PubSubHubbub 更新他们的提要并让订阅者知道。 Superfeedr(我为 Superfeedr 工作)等其他服务使用不同的技术来了解何时是获取提要的最佳时间(基于历史更新、相关提要中的更新等)。

    【讨论】:

      【解决方案2】:

      我使用了像你这样的第一个选项。从检索提要之前的默认时间开始。如果发现新项目,则减少 10% 的等待时间,否则增加 10%。每次更新都执行此适应,系统会自行调整。

      您可以使用不同的百分比,例如更快地缩短时间以更好地响应更新频率的变化。

      包括一个最小和最大时间跨度,以在预定义的范围内保持等待。

      它并不完美,但对我来说已经足够了。

      【讨论】:

        【解决方案3】:

        虽然这只是解决方案的一部分,但您也可以(如果提要通过 HTTP 提供)检查 RSS 提要的 Cache-Control 和 Expires 标头,以获取有关您应该多久获取一次提要的提示。

        【讨论】:

        • 是否有一个可行的例子,我可以在某个地方看到一个想法。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-09-18
        相关资源
        最近更新 更多