大型 RSS 阅读器如何工作(netvibes、Google 阅读器...)

2024-02-11

我想知道像 Google Reader、Logline、technorati 这样的 Web 应用程序是如何工作的,以及它们遵循哪些技术使用 cron 作业一次性解析数百万个 RSS 提要?


有一个lot不同的技术......“最糟糕”的技术就是您所描述的技术。 (基于时间的轮询)。

您需要考虑的第一件事是它们可能并不都在服务器端进行解析。例如,我知道Netvibes在客户端进行解析(但将内容缓存在服务器上),因此它节省了他们很多资源。这样他们就会仅当用户向他们询问,所以他们不需要运行某种时间循环。

不幸的是,基于时间的轮询仍然是最常见的解决方案。有很多技术可以确定何时是进行民意调查的最佳时间。基于过去更新的频率、基于订阅的用户数量……等等。这些人也可以使用旧的 XML-RPC ping 服务器。

最有效的技术是使用PubSubHubbub https://github.com/pubsubhubbub,这是 Google Reader、Netvibes 和数千个其他应用程序(如 Digg.com、Twitterfeed、Friendfeed...)使用的开放协议。它是开放协议允许 feed 发布者直接将 feed 内容推送到订阅应用程序。它非常有效,但需要发布者来实施。偶然地,所有大型博客平台(Tumblr、Posterous、Wordpress、Blogger、SixApart...等)已经实现了它。其他提要发布应用程序(如 feedburner、Gowalla 等)也实现了它。如果您确实发布了提要,我会鼓励您加入这个人群,如果您打算消费一些提要,请也实现订阅者方面。

最后一个解决方案是使用第三方应用程序进行数据收集(使用上述所有技术),并在这些源实际上有新内容时向您发出通知。我创建了一个:超级喂食器 http://superfeedr.com我相信我们在这方面做得很好。我们还规范化内容并执行其他一些操作来帮助您以最简单且廉价的方式使用提要数据(轮询可能非常昂贵)。还,我们使用完全相同的 PubSubHubbub 协议从任何源推送内容,这使得我们的用户除了订阅可用的中心之外还可以非常简单地使用我们的服务。

另外,我应该补充一点,我能够快速回复您的问题,因为我使用的应用程序可以推送标记为 RSS 的问题提要的内容:)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

大型 RSS 阅读器如何工作(netvibes、Google 阅读器...) 的相关文章

随机推荐

  • if else 不检查 Python 中的两个条件

    我希望根据特定条件创建新列 pred n 条件如下 如果年份小于或等于当前年份且月份小于当前月份 则 pred n 应等于 yhatpct 否则应为yhatpct ft 尝试以下语法 if dfyz year x lt datetime n
  • FCM 服务不可用 nack

    我有一个 python3 程序 可以成功连接到 FCM XMPP 测试服务器 但是 发送 JSON 后 它返回给我一个SERVICE UNAVAILABLE每次nack消息 上周的同一段代码运行得非常好 The 文档 https fireb
  • Django 模型管理器.py 和 models.py

    鉴于以下情况 模型 py from managers import PersonManager from django db import models class Person models Model first name models
  • 电对模式和 Python 三引号

    有没有办法在电对模式下启用自动配对Python三引号 这可以在自动配对模式下使用进行配置autopair python triple quote action 是否有类似的方法可以在电对模式下启用此功能 您可以执行以下操作 defun py
  • Rails 在开发模式下不会记录模板错误

    我的 Rails 3 2 9 app 没有向我显示任何有关错误的具体错误信息在模板中 无论我使用 haml 还是 erb 我总是会得到 我们很抱歉 但有些不对劲 事实上 韦布里克is in 发展模式 如果我的模型或控制器出现错误 我会看到完
  • 如何在 GDAL ruby​​ 绑定中显式关闭数据集?

    我在用GDAL https gdal org 1 7 1 从ruby1 9生成GeoTIFF文件 在里面tutorial https gdal org tutorials raster api tut html他们建议使用 GDALClos
  • Ubuntu 11.10链接perftools库

    我无法让 Ubuntu 11 10 中的 gcc 正确链接到 google perftools lprofiler 问题似乎是链接器丢弃了程序中未直接使用的库 一个例子会有所帮助 我们称之为 main cpp include
  • Xamarin iOS UIButton 如何以编程方式单击按钮?

    我试图通过在 ViewWillAppear 函数中以编程方式调用按钮来伪造单击按钮的行为 onclick 函数是在我的 ViewDidLoad 中定义的 您可以看到我正在尝试使用执行选择器来手动调用按钮 该按钮似乎没有运行 有任何想法吗 p
  • WebRTC:对多个对等连接使用相同的 SDP?

    是否可以在多个对等连接中使用相同的 SDP 我正在使用 WebRTC 构建视频会议 这个想法是 呼叫者使用某种信令机制 使用其 SDP 每个用户相同的 SDP 向所有其他用户发送广播消息 然后用户将使用其 SDP 进行响应 当用户收到某人的
  • 调整窗口大小时是否可以完全消除闪烁?

    通常 即使使用双缓冲 在调整窗口大小时 似乎也不可避免地会发生闪烁 第1步 原始窗口 第2步 调整窗口大小 但多余的区域尚未绘制 第3步 调整窗口大小 并绘制额外区域 是否有可能以某种方式隐藏步骤 2 我可以暂停调整大小过程 直到绘画操作完
  • 图像,onload 事件在 Chrome 中不起作用

    我正在使用 html5 创建拖放图像上传功能 这在 Firefox 中对我来说非常有用 但在 chrome 中图像 onload 事件仅在第一次触发 如果我只在第一个作品中拖动多个图像 而如果我在其中拖动第二个图像 则会失败 我相信问题出在
  • iTunes Connect:带有特殊字符的应用程序名称(德语“umlaute”)

    今天 我想提交一个新的德语应用程序 应用程序名称中有一个 元音变音 B rse AppStore 中有很多带有特殊字符 Di t F hrerschein 等的应用程序 当我输入应用程序名称时 JavaScript onBlur 事件会将名
  • Java中如何设置语言?

    我正在使用带有外国操作系统 韩语 日语等 的Java程序 FileChooser等swing组件的显示是外语 我需要将其更改为英文 java util Locale setDefault java util Locale ENGLISH J
  • Noop for Swift 详尽的 Switch 语句

    Swift 需要详尽的 switch 语句 并且每种情况都有可执行代码 switch 中的 case 标签应至少有一个可执行语句 有没有人找到了一种好方法来处理您实际上不想做任何事情的情况 我可以在那里放一个 println 但这感觉很脏
  • Java EE 7 和 Java EE 6 之间的区别 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 Java EE 7 和 Java EE 6 之间的主要区别是什么 如果您必须向另一位开发人员解释主要差异 你会怎么做 就问题而言 我真
  • 用“/”字符修补 kubernetes 标签

    我有以下代码 https stackoverflow com questions 57310483 whats the shortest way to add a label to a pod using the kubernetes go
  • 更改 Laravel 中的控制器模型模板

    我想知道是否有任何方法可以更改控制器和模型的基本模板laravel5 4 我的意思是当我跑步时 php artisan make controller ControllerName resource 它会生成这个
  • Matlab 中的布尔矩阵乘法

    Matlab 有布尔 有时称为逻辑或二进制 矩阵乘法函数吗 我具体讨论的是通常用带有点的圆圈表示的内容 以表示布尔矩阵乘法 cij ai1 b1j ai2 b2j ai3 b3j aik bkj 我很难找到一个 现在假设它不存在 如果是这种
  • 存储登录的用户详细信息

    创建 Web 应用程序时 假设您有一个表示单个用户的 User 对象 您认为存储用户已登录的最佳方式是什么 我考虑过的两种方法是 将用户数据库 ID 存储在会话变量中 将整个用户对象存储在会话变量中 有更好的建议吗 使用上述方法有什么问题吗
  • 大型 RSS 阅读器如何工作(netvibes、Google 阅读器...)

    我想知道像 Google Reader Logline technorati 这样的 Web 应用程序是如何工作的 以及它们遵循哪些技术使用 cron 作业一次性解析数百万个 RSS 提要 有一个lot不同的技术 最糟糕 的技术就是您所描述