0

サーバーパラメーターに基づいてテキスト文字列を表示する 100 台の Android デバイスを使用しようとしています。サーバーのテキストが「Hello World」から「Everything Changed」に変更された場合、変更が発生するとすぐに、100台のAndroidデバイスすべてを同時に、理想的には即座に更新したいと考えています。

これは隔離された LAN 上で実行されるため、C2DM は実行可能ではなく、毎秒のポーリングはかなりトラフィックが多いように見えます (特に 1000 台のデバイスがある場合)。ポーリングからプッシュに移行する方法、または少なくともこれをスケーラブルにする方法に関する推奨事項はありますか?

接続を開いたままにして、サーバーが変更された場合にのみコンテンツを返すことを検討していましたが、タイムアウトの問題と、何百もの同時接続を処理する PHP の機能について心配しています...試してみるべきポインターやアドバイスはありますか?

4

1 に答える 1

1

引っ張ってはいけません。プライベートネットワークにいて、デバイスの数が限られている場合は、tcpソケットを開いたままにし、開いたソケットを介してサーバーからクライアントにデータを送信することをお勧めします。

しかし、あなたはあなたが何をしているのかを理解しなければなりません。

したがって、以下をお読みください。

1)開くことができる接続の数と、ニーズに十分な数を理解する ソケット接続はいくつ可能ですか?

2)デバイスがたくさんある場合、つまり1000を超える場合は、サーバー側で障害が発生する可能性があります。失敗しないようにするには、asynciohttp ://en.wikipedia.org/wiki/Asynchronous_I/Oおよびネットで見つかったその他のいくつかについて読む必要があります。とphpの非同期ioPHPは非同期でソケットを使用できますか?

于 2012-07-19T11:52:34.463 に答える