からHTTPサーバ私は私の携帯電話(クライアント)上で実行されているJ2MEのアプリを持っている、ポーリングJ2MEクライアント
私は、サーバーとのHTTP接続をオープンして、サーバー上の最新情報のポーリングを維持したいと思います。
実行されたすべてのポーリングはGPRSバイトを使い果たし、GPRS課金は送受信されたパケットに基づいているため、長期的には高価になります。 HTTPプロトコルを使用して効率的にポーリングする方法はありますか。
私は長いポーリングについても聞いたことがありますが、どのように動作し、どれくらい効率的であるかはわかりません。
実際には、サーバが新しいデータを使用する準備ができていることをサーバーに通知することができますが、ポーリングは実行する必要はありませんが、特にJ2MEではこれらの手法はわかりません。
良い答え!, 私は以下について理解していませんでした: 1.プッシュするイベントがなければ、サーバーはブロックされます。 2.ハートビートとは何ですか? 3. Tomcatにはアクティブユーザー数に制限があります。 –
回答:1.何もプッシュしない場合は、接続を開いたままにしてイベントを待っています。 BlockingQueueをチェックしてください。 2.ハートビートはサーバーが生存していることを電話に伝える管理パケットです。アイドル状態が長すぎる場合は、電話が古くなった接続回復モードになるのを避けるために送信してください。これは高価です。 3. Tomcatのようなサーブレットの場合、各HTTPリクエストはスレッドです。スレッドの数は、実行中のアプリケーションの数に等しくなります。 maxが設定可能であっても、その数が多すぎるとサーバは実行しません。私は数千ではなく数百にとどまるように努めます。 –