プッシュ技術に参入したいのですが、ユースケースは次のとおりです。
- 膨大な数の同時クライアント (数十万)
- 低いメッセージ レート (~ 毎分 1)
- 小さなデータ (<500 バイト/メッセージ)
- 2 秒未満の遅延
現在、競合する 2 つのソリューションがあります。
実際の websocket/longpolling サーバー クラスターを構築できます (node または vert.x で、大気、playframework、socket.io を評価します)。これにより、複数の 100.000 ソケットが同時に有効になり、ほぼすべてがアイドル状態になります (ただし、25% の IE は常に長いポーリング接続を再確立します)。
従来のポーリングのエンドポイントとして、キャッシュ Web サーバー (無効化可能) の背後にある静的 json ファイルを使用することができます。これにより、ブラウザーから 1 秒あたり 100.000 のリクエストが数回発生し、そのほぼすべてに対して結果コード 304 が返されます。
どのソリューションを提案しますか? 特にリソース消費に関しては、CPU、メモリ、トラフィック、io?