2011-09-08 12 views
3

私は現在、ストリーミング部分は、実際に(Twitterの端に)動作しないか疑問node.js & socket.oiストリーミングTwitter API - どのように機能しますか?

を使用してstreaming twitter apiを実装するのですか?私はPHP/MySQLを使用して自分のライブストリーミングサービスを実装し、dbからの最新のコメントを取得してライブ表示するとします。

すべての情報/入力をいただければ幸いです。

おかげ

答えて

5

ストリーミングTwitterのAPIはHTTP Streaming APIの一例です。

Quoraの(上にリンクされている)から:

HTTPストリーミングは、Webクライアントにアップデートをプッシュするために使用される技術です。永続的な接続は、WebクライアントとWebサーバーの間で開いたままにしておき、サーバーに新しい情報があるときにクライアントにプッシュできます。これは真に永続的な接続であり、ネットワークの問題やユーザーの操作などによってのみ削除されます。ウェブページからナビゲートするか、アプリケーションが閉じられます。

Content-Type:text/html; charset=iso-8859-1 
Server:Jetty(6.1.25) 
Transfer-Encoding:chunked 

あなたはそれがJetty web serverを使用して見ることができます:レスポンスヘッダを見ると

これはPHPを使って実現することができますが、そのすべてをうまくスケーリングすることは難しく、効率的ではありません。そのためTwitterはJettyを使用しています。

あなたが探していると思われるものを達成する方法は、あなたのコメントを提出してデータベースに保存し、そのコメントをある種のmessage queueにプッシュすることです。このメッセージキューは、リアルタイム技術(例えば、Jettyで動作するプロセス)によって監視され、メッセージはキューから読み込まれ、HTTPストリーミングAPIに接続されたクライアントにストリームされます。

注:あなただけのクライアント(アプリケーション、Webブラウザ)に(すなわちリアルタイムのプッシュは、サーバープッシュは、プッシュ通知を)押してアップデートを見ている場合は、HTTPストリーミングAPIは、おそらく過剰

+0

でまた見ることができますこのQでPHPを使用してHTTPストリームを作成する例:http://stackoverflow.com/questions/7213549/long-polling-http-streaming-general-questions/7214483#7347851 – leggetter

+0

"アップデートをプッシュしているだけなら(つまり、リアルタイムプッシュ、サーバープッシュ、プッシュ通知)をクライアント(アプリケーション、Webブラウザ)に送信すると、おそらくHTTPストリーミングAPIは過度のものになるでしょう。 – ganesshkumar

+0

既に入手可能な多くの[リアルタイム技術](http://www.leggetter.co.uk/real-time-web-technologies-guide)の1つが、おそらく最良の賭けになるでしょう。 WebSocketサポートを提供し、HTTPベースのトランスポートにフォールバックするもの。 – leggetter

関連する問題