« P906iで自作着うた | トップページ | mixiのOpenID対応 »

分散式メッセージングサービスとか考えてみる。

Twitterとかそのほか色々流行ってますよね。
ついにmixiも真似しはじめたくらいだし。

サーバへの一極集中になっちゃうので、これを分散させる(各個人のサーバで動かす)にはどうしたらいいのかなーと思いまして。
色々考えてみました。漠然と(笑)

●ベース=ここの前提は変えない
・通信プロトコルはHTTPだけで構成。(UI/API/クライアント間通信すべて)
・ユーザーが簡単に設置(インストール)できること。DBとかは使用しない。
・言語はPHPかなー。rubyでCGIでもいいけど。

●基本構造
・チャットと同じ。

●フォロー
・フォローされた側がフォローした側に(HTTP経由で)データを渡す構造。
・更新されたら(フォローしてる側の)クライアントにXMLで渡す
・クライアントは受け取ったデータが本当にフォローしてる側のものかを確認(照合)

●フォロー処理の問題点
・認証構造。へたするとクラックされてspamを送りつけられる。
・フォローされた数が多くなったら(100超えるとかそんなかんじ)、クライアントへの送信がネックになる
 →中継(hub)サービスの設置と実装が必要?

●中継(hub)サービス
・配信中継するサーバ。1つのサーバからきたメッセージを複数のクライアントに送信。
・本当に中継だけでもいいし、同時にメッセージングサービスを動かして、内部で配信、とやってもOK。
・えっと・・・つまり、うまくやると、違うメッセージングサービスの内容を1つのタイムラインにのっけちゃうことも可能になっちゃうかも。


・・・ここまで書いて。
SMTPとかNNTPとか、なんかそういうのに近いのが浮かびました。
メールだとメーリングリスト配信とかそういうノリ。

正直なところ・・・絶対誰かが既に考えてるよね(^^;
でも、面白そうなんで組んでみるかなー?

|

« P906iで自作着うた | トップページ | mixiのOpenID対応 »

コメント

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: 分散式メッセージングサービスとか考えてみる。:

« P906iで自作着うた | トップページ | mixiのOpenID対応 »