今日、サーバーに非同期でメッセージを送信することが可能な限り単純な場合、逆転送では、すべてがそれほどバラ色ではありません。 サービスはこのタスクを引き受けます。
すべてが非常に簡単に機能します。 プッシャーのJavaScriptがページに挿入され、プッシャーのサーバーへの接続が開かれ、何らかのチャネルでメッセージがサブスクライブされます。 メッセージを送信する場合は、プッシャーAPIを呼び出してチャネルにメッセージを送信します。 チャンネルをサブスクライブするすべてのユーザーが受信します。
したがって、適切なすべてのユーザーにオンラインで大量のメッセージを送信することは非常に簡単です。 これにより、チャットを非常に簡単に作成できます。ページにプッシャーを挿入するだけで、サーバー上のスクリプトはPOSTによってメッセージを受信し、プッシャーAPIを「プル」し、プッシャーAPIはWebソケット経由ですべてのクライアントに送信します。 同様に、共同グラフィックエディタなど、より複雑なこともできます 。すべては例とドキュメントにあります 。
私自身は、数か月前にチャットとオンラインをプッシャーに切り替えたため、いくつかの問題を一度に解決できました。
-メッセージ配信を大幅に加速
-ユーザートラフィックの削減
-サーバーの負荷を軽減-メッセージのみを受信し、ユーザーはユーザーへのメール送信に従事
-システムのスケーラビリティの改善
先に進むと、ユーザーが問題に遭遇するかどうかについていくつかの疑問がありました。 さまざまなブラウザーがどの程度サポートされるか。 恐怖は無駄でした-プッシャーはWebSocketsを使用し、それらが利用できないとき(たとえば、古代のIEの非ブラウザー)、Flash Socketsを介した古き良きエミュレーションは、まさにWebソケットでのモデルチャットで使用したものです。 練習により、これで十分であることが示されました。 ロングポーリング、マルチパートなどを複雑化および劣化させる必要はありません。
最近、別のより複雑なプロジェクトで使用することにしました。
興味深い場合は、実装方法を詳しく説明します。
まとめると
長所:
-サイトへの接続が非常に簡単-PHPとPythonに既製のものがあります
-あなたの言語用の既製のライブラリがない場合、シンプルなAPIを使用できます。これにはcurl`aで十分です
-スケーリングの問題を取り除きます-プッシャーはAmazonサーバーでホストされます
短所:
-有料