バックグラウンド :
Solr サービスに接続するために HttpClient (SolrJ) を使用しています。ただし、質問はSolrとは直接関係ありません。
負荷テストを行っているときに、次の問題に遭遇しました。
原因: java.lang.IllegalStateException: BasicClientConnManager の無効な使用: 接続がまだ割り当てられています。
SOF 回答 - プール接続マネージャーを使用するには
質問 :
次のコードのようにPoolingHttpClientConnectionManagerを使用しています。接続サイズを手動で調整する代わりに、 AIMDBackoffManagerを使用して管理したいと考えています。AIMDBackoffManager
ただし、パラメーターとして接続プールが必要であることがわかります。
public static final PoolingClientConnectionManager poolingConnectionManager = new PoolingClientConnectionManager();
public static DefaultHttpClient getHttpClient(){
DefaultHttpClient httpClient = new DefaultHttpClient(poolingConnectionManager);
httpClient.setBackoffManager(new AIMDBackoffManager(poolingConnectionManager));
...
...
}
私はかなりグーグルで検索しましたが、 の使用法に関する例を見つけることができませんBackoffManager
。だから、これは私がしたことですが、接続マネージャーをDefaultHttpClient
. それとも、初めて に渡しHttpClient
、2 回目に に渡すことを考えると、心配する必要はありませんBackoffManager
か?
httpclient-4.2.3 を使用しています