この投稿では、XMPP の使用法について読みました。この種のことは必要ですか、そしてもっと重要なことに、私の主な質問は拡張されています:チャット サーバーとクライアントは、標準の HTTP とブラウザー テクノロジ(PHP と JS、または RoR と JS など) だけを使用して効率的に構築できますか? それとも、XMPP のような古いプロトコルに固執し、それらをアプリケーションに統合する方法を見つけるのが最善でしょうか?
LiveHTTPHeaders と Firebug を介してCampFireを約 5 分間調べたところ、別のチャットが発生するまで応答されないリクエストを送信するために Ajax が使用されているようです。これは、CampFire がサーバー上で新しいスレッドを開いて更新をリッスンし、スレッドが更新を聞いたときに要求に応答を返すだけですか? 彼らが特定のポートでリクエストしていることに気づきました(8043
メモリが私に役立つ場合)。これにより、私が言及したことよりも複雑なことをしていると思います。また、要求された URL が開始され、/tcp/
興味深いことがわかりました。
注:すべての部屋を合わせて同時に 150 人を超えるユーザーがライブチャットすることはないと思います。何千人もの同時ユーザーがいる CampFire のようなホステッド ペイ フォー チャット サービスを構築している場合、特別なテクノロジの研究に時間を費やすのではなく、アプリで単純な方法で車輪を再発明するのが当然であることを理解しています。
また、サーバーのポーリングでそれを行う場合、サーバーを非難することなく応答を最大化するために、どのくらいの頻度で個人的にポーリングしますか?