BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース PubSubHubbubを使った即時通知

PubSubHubbubを使った即時通知

原文(投稿日:2009/09/02)へのリンク

PubSubHubbub は“サーバ間をweb-hookの仕組みで繋いだ、オープンな配信/購読プロトコルであり、Atom (とRSS)を拡張した”ものだ。このプロトコルを使えば、関係者はフィードが更新されたとき、ほぼ即時に通知を受け取れる。このプロトコルを開発したのはGoogleであり、同じ名前のプロジェクトとしてGoogle Codeで公開されている。

クライアント側が定期的にサーバ側へポーリングしてフィードが更新されていないかを確かめるかわりに、PubSubHubbubプロトコルはこのプル型の方法をプッシュ型に変える。クライアントはハブを購読すれば、ほとんど即時にフィード更新の通知を受け取れる。この一連の仕組みはプロジェクトのホームページで下記のように説明されている。

  • あるフィードは(ある"トピック"を表す)このフィードのハブサーバを<link rel="hub" ...>のような形式でAtomやRSSのXMLファイルの中に記述します。ハブはフィードの配信者によって運営される場合もありますし、誰でも利用できるコミュニティハブもあります。 (AtomとRssフィード をサポートしています)
  • 購読者(このトピックに興味のあるサーバ)は、最初、普通にAtomのURLを取得します。取得したAtomファイルにハブが定義されていれば、以後、購読者はこのURLに対して不細工なポーリングを続けることをやめ、代わりにこのフィードのハブを登録して更新を購読します。
  • 購読者がトピックを購読するのは、そのトピックのURLが定義するハブからです。

Googleはこのプロトコルを、FeedBurnerやReader(shared items機能)、Bloggerや最近ではAlertsなど、いくつかのサービスで実装している。プロトコル自体はApache License 2.0で公開されているので、誰でも利用できる。その上、どんなサーバでもハブとして運用できる。GoogleのApp Engine上で動かす必要はない。

Googleはハブの実装サンプルを作った。これは配信/購読プロセスをテストして、どのように動作しているのか確かめるのに使えるだろう。またこのビデオでは、実際にこのプロトコルをつかったデモが見られる。

この記事に星をつける

おすすめ度
スタイル

BT