どのようなTCPプロトコルは、クライアント通信へのクライアントのために利用可能ですか?

StackOverflow https://stackoverflow.com/questions/1240503

質問

Manytimesクライアントは自分のWebアプリケーションのためのインスタントメッセージング(IM)およびその他のクライアント・ツー・クライアント(P2P)通信などの機能を求めます。一般的にどのようにこれは、通常のWebブラウザで実行されますか?たとえば、私は、通常のブラウザからIMすることができます Google Waveのの(やGmail)のデモを見てきました。これは、HTTPを経由してますか?またはXmlHttpRequestの(AJAX)は、通信に必要なバックエンドを提供していますか?

私はどのようにサーバーがリモートクライアントを「ウェイクアップ」できるだろう何よりも、IMを送信するために言うことができますか?またはクライアントが新しいインスタントメッセージのためのメッセージサーバを「ポーリング」を維持する必要があるのでしょうか?

役に立ちましたか?

解決

一般的にブラウザが新しいメッセージのためにサーバーをポーリングします。多くの場合、これはより効率的にするために行われている一つのアプローチは、「<のhref = "http://niryariv.wordpress.com/2009/07/13/the-long-poll-implementing-ajax-chat-with-cometです/」のrel = "nofollowをnoreferrer">ロングポーリングする」(も参照<のhref = "http://cometdaily.com/2007/11/16/more-on-long-polling/" のrel =」 noreferrer nofollowを ">このリンクのは) - それは何かを持っている場合、サーバーはすぐに応答します。そうでない場合、それはしばらくオープン接続を維持しながら待機します。メッセージが入ってくる場合は、すぐに目を覚ますと、それを送信し、それ以外の場合は、数十秒後に「いや、戻って確認してください」。に戻ってきますクライアントは、彼らはすぐにロングポーリング状態に戻ってリダイヤルします。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top