2011-07-05 25 views
1

私はプッシュ機能を使用するソリューションを開発する予定です。サーバーとモバイルデバイスのクライアントアプリケーションがあります。プッシュサーバー実装技術?

サーバーからクライアントにメッセージをプッシュする方法を知っておく必要があります。つまり、私のクライアントアプリケーションは、メッセージがサーバから来るまで受動的に待っています。

サーバーからのメッセージをプッシュする技術は何ですか。

クライアントは、Android、J2ME、BB、iPhoneのなど "COMET" の

+0

これはウェブアプリですか、Iphoneアプリですか、Androidアプリですか? –

+0

私たちはAndroid、J2ME、BB、iphoneなどと異なるクライアントを考えています –

+0

[Real-Time Technologies Guide](http://www.leggetter.co.uk/real-time-technologies comet、WebSocketsなどのものをカバーし、あなた自身でインストールできるソリューションと同様に、ホストされたサービスのリストを提供します。 – leggetter

答えて

2

グーグルの形態である、あなたは、リンクの多くを得るでしょう。一般的に言えば、リクエストをパークし、返すデータがあるときにそれを受け取るサーバーフレームワークが必要です。たとえば、基本的なJavaサーブレットは要求ごとにスレッドを保持し、要求を「パーク」すると(ある程度待機することによって)スレッドは要求とともに中断されます。このように、要求に応じて多くのクライアントを待機させることができるのは、サーバーにスレッドを持つことができるだけで、大きなアプリケーションでは不十分です。

少なくとも、要求が一時停止されるとスレッドを再利用できるシステムが必要です。プッシュが再び普及するにつれて、プッシュをサポートするフレームワークが盛んになるため、より多くのコンテキストがなければ、特定のサーバー/フレームワークを推薦することは困難です。

Play Framework(http://www.playframework.org/)には、「プッシュ」の3つのバリエーションを使用するサンプルチャットアプリケーションがあります。何かあれば、Javaを知っていると仮定してコードを解読して、さまざまなソリューションの感触を得る価値があります。

+0

ありがとうcdrgroot、COMETに焦点を当てて –

2

HTML5ウェブソケットをご覧ください。これは、 raw TCPソケットソケットを開き、TCPソケット(with some limitations)のように動作しますが、HTTP経由でブラウザから開始され、真の双方向通信を可能にします。現在のiOSブラウザを含む最新の多くのブラウザでサポートされています。 Androidはこれをサポートしていませんが、Flashのピクセルに戻すことができます。ソケットを管理し、すべての情報をJavascriptに渡すフラッシュファイルを書くのは簡単です。あなたが興味を持っているなら、私はあなたのために掘り起こすことができるコードを持っているかもしれないと思う。

+0

WebSocketはraw TCPソケットではありません。 WebSocket Flashフォールバック:https://github.com/gimite/web-socket-js – igorw

+0

おかげさまで@igorw、私の答えを更新しました。 –