<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Tim[后端技术] &#187; pubsubhubbub</title>
	<atom:link href="http://timyang.net/tag/pubsubhubbub/feed/" rel="self" type="application/rss+xml" />
	<link>http://timyang.net</link>
	<description>Tim&#039;s blog, 关于后端架构、互联网技术、分布式、大型网络应用、NoSQL、Key Value等</description>
	<lastBuildDate>Mon, 02 Aug 2010 15:34:40 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>PubSubHubbub的价值</title>
		<link>http://timyang.net/web/pubsubhubbub/</link>
		<comments>http://timyang.net/web/pubsubhubbub/#comments</comments>
		<pubDate>Thu, 29 Oct 2009 10:27:56 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[pubsubhubbub]]></category>

		<guid isPermaLink="false">http://timyang.net/?p=455</guid>
		<description><![CDATA[HTTP是大部分互联网应用接口的首选协议，但是由于HTTP协议短连接且是单向请求(request/response)的特性，决定了调用方要获得实时结果，需要不断的轮询(Polling)服务接口。从而造成大量无意义的请求及服务器相应的开销。针对此现状，许多方案应运而生。比如基于XMPP pubsub的方案、基于HTTP的web-hook的方案、适合即时通讯的comet方案等。但是由于HTTP的简洁及标准的力量，上述方案都没有得到大规模的流行HTTP Polling的现状暂时无人能够改变。
PubSubHubbub是Google推出的一个基于Web-hook方式的解决方案，它包括PubSubHubbub协议及一个开源的参考实现(Reference Implementation)
原理
原理及数据流图在官网的Slide上已经有详细描述，这里以静态图补充。

价值
Publisher发布方
许多Blog服务提供者来说，RSS对它们来说是一个鸡肋，对运营及广告等业务没什么帮助，但是却流量很大。因此他们经常非常矛盾的维护着这个接口。如果PubSubHubbub能够在业界大范围的适用，至少从访问压力层面解除了BSP对提供RSS接口之忧。
特例 Realtime RSS(Twitter, 微博服务等)
Twitter/微博等realtime RSS可以从此方案受益，按照常规的方案，订阅方为了获取realtime的结果，几乎需要以每分钟1次的频率来访问RSS API, 如果订阅方能够以PubSubHubbub的方式来访问RSS，那么RSS API的请求量几乎可以降为0
Subscriber订阅方
Subscriber比如RSS阅读器，搜索引擎等类似业务。Google Reader看似PubSubHubbub最大的赢家。
另外在有hub的前提下，即使Publisher不支持PubSubHubbub, subscriber可以通过hub直接取到feed内容，就是说类似阅读器这样的应用现在就可以完全切换到PubSubHubbub体系上。
不适合的场景
Twitter client, 由于client处于防火墙后，通常也没有固定的可直接访问的HTTP Endpoint, 所以没法适用PubSubHubbub
最后，PubSubHubbub是否在业界大范围的改变现状，我们拭目以待。
Similar Posts:Ideas for creating a friendfeed like feed aggregator system

Twitter API最近的一些飞跃

Twitter架构图(cache篇)

FarmVille(美版开心农场)谈架构:所有模块都是一个可降级的服务

Twitter停用Cassandra原因分析
]]></description>
			<content:encoded><![CDATA[<p>HTTP是大部分互联网应用接口的首选协议，但是由于HTTP协议短连接且是单向请求(request/response)的特性，决定了调用方要获得实时结果，需要不断的轮询(Polling)服务接口。从而造成大量无意义的请求及服务器相应的开销。针对此现状，许多方案应运而生。比如基于XMPP pubsub的方案、基于HTTP的web-hook的方案、适合即时通讯的comet方案等。但是由于HTTP的简洁及标准的力量，上述方案都没有得到大规模的流行HTTP Polling的现状暂时无人能够改变。</p>
<p><a href="http://code.google.com/p/pubsubhubbub/">PubSubHubbub</a>是Google推出的一个基于Web-hook方式的解决方案，它包括<a href="http://pubsubhubbub.googlecode.com/svn/trunk/pubsubhubbub-core-0.2.html">PubSubHubbub协议</a>及一个开源的参考实现(Reference Implementation)</p>
<h3>原理</h3>
<p>原理及数据流图在官网的Slide上已经有详细描述，这里以静态图补充。</p>
<p><img class="alignnone size-full wp-image-456" title="pubsubhubbub" src="http://timyang.net/blog/wp-content/uploads/2009/10/pubsubhubbub.png" alt="pubsubhubbub" width="568" height="556" /></p>
<h3>价值</h3>
<h4>Publisher发布方</h4>
<p>许多Blog服务提供者来说，RSS对它们来说是一个鸡肋，对运营及广告等业务没什么帮助，但是却流量很大。因此他们经常非常矛盾的维护着这个接口。如果PubSubHubbub能够在业界大范围的适用，至少从访问压力层面解除了BSP对提供RSS接口之忧。</p>
<h4>特例 Realtime RSS(Twitter, 微博服务等)</h4>
<p>Twitter/微博等realtime RSS可以从此方案受益，按照常规的方案，订阅方为了获取realtime的结果，几乎需要以每分钟1次的频率来访问RSS API, 如果订阅方能够以PubSubHubbub的方式来访问RSS，那么RSS API的请求量几乎可以降为0</p>
<h4>Subscriber订阅方</h4>
<p>Subscriber比如RSS阅读器，搜索引擎等类似业务。Google Reader看似PubSubHubbub最大的赢家。<br />
另外在有hub的前提下，即使Publisher不支持PubSubHubbub, subscriber可以通过hub直接取到feed内容，就是说类似阅读器这样的应用现在就可以完全切换到PubSubHubbub体系上。</p>
<h4>不适合的场景</h4>
<p>Twitter client, 由于client处于防火墙后，通常也没有固定的可直接访问的HTTP Endpoint, 所以没法适用PubSubHubbub</p>
<p>最后，PubSubHubbub是否在业界大范围的改变现状，我们拭目以待。</p>
Similar Posts:<ul><li><a href="http://timyang.net/architecture/friendfeed-like-aggregator/" rel="bookmark" title="April 3, 2009">Ideas for creating a friendfeed like feed aggregator system</a></li>

<li><a href="http://timyang.net/sns/twitter-api-changes/" rel="bookmark" title="December 30, 2009">Twitter API最近的一些飞跃</a></li>

<li><a href="http://timyang.net/architecture/twitter-cache-architecture/" rel="bookmark" title="October 28, 2009">Twitter架构图(cache篇)</a></li>

<li><a href="http://timyang.net/architecture/farmville/" rel="bookmark" title="March 8, 2010">FarmVille(美版开心农场)谈架构:所有模块都是一个可降级的服务</a></li>

<li><a href="http://timyang.net/data/twitter-cassandra/" rel="bookmark" title="July 12, 2010">Twitter停用Cassandra原因分析</a></li>
</ul><!-- Similar Posts took 8.646 ms -->]]></content:encoded>
			<wfw:commentRss>http://timyang.net/web/pubsubhubbub/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
