Javascriptを使用してサーバープッシュの調査を行いましたが、一般的なコンセンサスは、私が探しているのは「Comet」デザインパターンにあるということです。 jQueryの上に構築されたこのパターンの良い実装はありますか?そうでない場合、このパターンの良い実装はありますか?そして、それらの質問に対する答えに関係なく、実装の観点からこのパターンに関するドキュメントはありますか?
Tillが言及したプラグインを書きました。プラグインは Bayeux プロトコルの実装であり、現在、ロングポーリング(AJAXを介したローカルサーバー)およびコールバックポーリング(XSSを介したリモートサーバー)をサポートしています。 Bayeux の実装があります。Pythonは、cometd-twistedと呼ばれ、プラグインが動作すると聞いたことがありますが、これを検証していません。 cometd-jetty および erlycomet これにはjQuery Cometの例が含まれています。私の blog の詳細情報と、基本的なチャットの例の現在のコードは、 googleコードページ 。この情報がお役に立てば幸いです。プラグインについてさらにサポートが必要な場合は、お気軽にお問い合わせください。
誰かが構築した jQueryを使用したCometのクライアント 。それが良いかどうかはわかりません。 Cometについて読んで、Cometでできるすべてのことを聞いたことがありますが、Cometを使用することはありません。私の現在のプロジェクトでは時間もユースケースもありませんでした。
彗星の実装に関するリンクを追加するのを完全に忘れていました。
毎日の彗星があり、彼らは 比較 オンラインです。この比較では、さまざまな実装の成熟度を強調しています。それはかなりおもしろいので、始めましょう。
お役に立てば幸いです!
コメットパターンを実装する完全なクライアントおよびサーバー側のソリューションについては、 Ape Project をご覧ください。
Cometは優れたソリューションであり、あらゆる種類の実装があります。どちらがニーズに依存します。
IIS/ASP.NET、 WebSync のソリューションを実装しました。これには、jQueryとうまく機能するjavascriptクライアントが含まれています。技術的には、これはBayeuxプロトコルなので、どのBayeuxクライアントでもうまく動作するはずです。同じプロトコルがdojoライブラリーにもあります。
詳細については、 the Bayeux protocol の仕様をご覧ください。
ここに非常に簡単な例があり、彗星を始めることができます。 NHPMモジュールを使用したNginxのコンパイルについて説明し、jQuery、PHP、およびBashでの単純なパブリッシャー/サブスクライバーロールのコードが含まれています。
http://blog.jamieisaacs.com/2010/08/27/comet-with-nginx-and-jquery/
実用的な例(簡単なチャット)はここにあります:
http://cheetah.jamieisaacs.com/
JQueryを使用している場合は、jquery-streamをお勧めします。現在、プロジェクトでjquery-streamを使用していますが、これまでのところ、信頼性が高く、十分に文書化されており、アクティブなGoogleコードプロジェクトがあります。