2017-11-29 9 views
0

HTTP要求プールでパフォーマンスに重要なアプリケーションがあります。私のアプリケーションサービスはバッチ処理バッチファイルです。 PoolingHttpClientConnectionManagerは複数のリクエストに対して接続を再利用しますか? 「はい」の場合、最適なキープアライブ時間はどのように計算されますか?私のhttpリクエストの応答時間は平均25ミリ秒です。PoolingHttpClientConnectionManagerとキープアライブ設定

答えて

0

はい、それは複数の要求のための接続を再利用します。ルートごとに最大数の接続をプールし、デフォルトは2であるため、ほぼ確実に増やしたい場合や、ボトルネックになる場合があります。それは多くのものに依存する

最高のキープアライブ時間の計算は、非自明です。どのくらいの頻度でバーストが発生しているか、ウェブフロントやアプリケーションサーバが何を保持しているかなど。一般的に私は5〜10秒と何かのようなものから始めます。バーストが8秒離れていることが分かっている場合は、少し大きめのものを目指してください。バーストが数分以上離れていると、接続が長く続くと問題が発生します(ファイアウォール、サーバー側クローズなど)。

+0

おかげで、私は、Webサービスが最良の応答時間で処理できる値にsetDefaultMaxPerRouteを設定しました。活動のバースト間の時間は予測不可能であり、10分から2時間の間隔である可能性がある。私は、多くの接続が再利用されているので、処理時間中にパフォーマンスが向上すると思う。平均処理時間は250K要求あたり3分です。 – user3140656

関連する問題