3

Apache の上に Perl で構築されたページに、ロング ポーリングまたは別の標準的な手段を介して実装された、ある種の HTTP プッシュのような機能を追加しようとしています。

Meteor や Stardust などの別のサーバーをセットアップせずにこれを行う方法はありますか? サーバーコードに役立つモジュールはありますか? ロングポーリング以外の方法はありますか?

4

1 に答える 1

2

現在のアプリケーションまたは設計への大きな変更を避けるために迅速かつ汚い修正が必要で、即時の更新は必要ない場合、1 つの簡単な方法は、ブラウザーからサーバーへの定期的な AJAX ポーリングを使用することです。

つまり、ブラウザの JavaScript を使用して、数秒ごとにサーバーをチェックし、このブラウザ セッションのメッセージやデータがサーバーにあるかどうかを確認します。これは、特にポーリング タイムアウトが短い場合は、あまりうまくスケーリングできない可能性が高く、サーバー リソースを消費しますが、一時しのぎの便利なソリューションになる可能性があります。

繰り返しますが、これは簡単な回避策です-一般的なコンセンサスは、COMET(おそらくあなたの場合は別のサーバーで)を適切な解決策として使用する必要があるということです(Webソケットが到着するまで...)-これらのリンクでいくつかの優れた分析を参照してください:

http://cometdaily.com/2007/11/06/comet-is-always-better-than-polling/ http://stackoverflow.com/questions/2975290/comet-vs-ajax-polling

于 2010-11-16T14:18:34.143 に答える