PubSubHubbub工作原理及使用入门
现在来说说看PubSubHubbub是什么东西,如何使用。前面说写了个将Google Reader的分享实时同步到Twitter的应用:reader2twitter.appspot.com,就是使用了PubSubHubbub协议,那么到底什么是PubSubHubbub协议呢?
官方说法是,A simple, open, server-to-server web-hook-based pubsub (publish/subscribe) protocol as an extension to Atom (and RSS)。其实就是一个RSS和Atom扩展协议,有了这个协议,就可以几乎实时地获取更新。
下面说说它的工作原理,分以下几步:
1.Subscriber(订阅者)向Publisher(发布者)请求获取更新的内容(很普通的request)
2.Publisher告诉Subscriber,我将更新托管到了某个hub上面
3.于是,Subscriber转而请求那个hub,告诉这个hub,如果Publisher一有更新的内容,就通知Subscriber的某个url
4.hub返回给Subscriber一个字符串,用以验证Subscriber不是攻击的肉机
5.订阅工作结束
6.hub不断向Publisher请求获取新内容,Publisher一有新内容也及时通知hub
7.hub获取更新的内容后,立刻通知所有在这个hub订阅Publisher的Subscriber
8.Subscriber根据通知的内容,进行处理,完成自己需要做的事情
理想状态是,有很多的hub,很多Publisher和Subscriber,相互交互。
下次将会说如何使用PubSubHubbub,使用的是Google App Engine做例子。
与微软FeedSync相比有什么优势呢?
微软的feedsync开源么?最近比较热门的两个东西是:PubSubHubbub和RSSCloud