問題タブ [apache-httpasyncclient]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - PoolingNHttpClientConnectionManager の requestConnection は Apache HttpAsyncClient でどのように機能しますか?
PoolingNHttpClientConnectionManager の requestConnection は Apache HttpAsyncClient でどのように機能しますか? 誰かが実際の例を見せてもらえますか?
java - HttpAsyncClient PoolingNHttpClientConnectionManager.requestConnection が返されませんでしたか?
以下は、PoolingNHttpClientConnectionManager から NHttpClientConnection を要求するコードです。connFuture.get() の呼び出しが返されません。誰でも理由を知っていますか?HttpAsyncClient ライブラリ httpasyncclient-4.0.1.jar を使用しています
httpclient - HttpAsyncClient 使用時の接続速度を取得する
synchronous を使用すると、メソッドの前後にHttpClient
置くだけで、1 つのリクエストの時間を取得するのは非常に簡単です。System.currentTimeMillis()
execute()
しかし、 に関して言えばHttpAsyncClient
、execute()
は非同期であり、タスクをキューに入れるだけです。そのため、接続の開始時刻を取得する方法がわかりません。
接続の終了時間は簡単です。クラス インスタンスSystem.currentTimeMillis()
のメソッドを呼び出すだけです。OnComplete()
FutureCallback<HttpResponse>
同期HttpClient
と非同期の両方に 、 、のHttpAsyncClient
3 つのフェーズがあります。すべてのリクエストは、実際に実行される前にキューに入れられます。を呼び出すと、リクエストが内部キューに送信された開始時刻を記録するだけなので、最終的に得られるのは + +です。バッチ リクエストをテストするためにベンチマークを実行すると、問題ありませんが、単一のリクエストをそれぞれテストするには、減算する必要があります。ConnectRequestTime
ConnectTime
SocketTime
long start=System.currentTimeMillis()
HttpAsyncRequestProducer.html#generateRequest()
ConnectRequestTime
ConnectTime
SocketTime
ConnectRequestTime
だから私の本当の質問は、の時間を取得する方法ConnectRequestTime
です?
apache-httpclient-4.x - Apache HttpAsyncClient で圧縮処理を無効にする方法
通常の CloseableHttpClient を作成するとき、圧縮 (およびリダイレクト) を無効にすることができます。
このようにして、変更されていない gzip データを受け取ります。今、私は CloseableHttpAsyncClient で同じことを試みていますが、関連するメソッドが HttpAsyncClients.custom() にありません:
実現可能性の評価または非同期 API へのコードの書き直しを開始したばかりなので、何か不足している可能性があります。非同期クライアントは圧縮されたコンテンツをどのように処理しますか? その動作はカスタマイズできますか?
java - HttpAsyncClient 4 はどのように機能しますか?
以前のバージョンのHttpClient
ターゲット ホストは、クライアント自体にセットアップされていました。最後のバージョン( 4.1.1の場合)では、リクエストを行うたびにホストが(など)HttpAsyncClient
に設定されます。HttpRequest
HttpGet
HttpPost
永続的な接続を使用したいので、使用しますHttpAsyncClient
。私は次のように作成して使用します。
テストしたところ、通常よりも高速に動作HttpClient
します (すべての要求を実行してから、すべての応答を待つ場合)。
しかし、それが内部でどのように機能するか、完全には理解できません。との接続はhttps://google.com/
いくつ確立されていますか? client
あるホストに使用してから別のホストに使用するとどうなりますか? (私がテストしたように、応答は任意の順序で来る可能性があるため、少なくとも2つの接続が並行していると思います). HttpAsyncClients.createDefault()
とはどう違いHttpAsyncClients.createPipelining()
ますか?
ありがとう!