問題タブ [asyncresttemplate]
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.
spring - Spring AsyncRestTemplate 接続プールとスレッド プールの設定
サービスで REST 呼び出しを行うために AsyncRestTemplate を使用したいと考えています。Spring のドキュメントによると、このクラスには 5 つのコンストラクターがあります ( http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/client/AsyncRestTemplate.htmlを参照) 。
AsyncRestTemplate(AsyncClientHttpRequestFactory asyncRequestFactory) - この AsyncClientHttpRequestFactory 引数を使用して、接続プールを構成できます。
AsyncRestTemplate(AsyncListenableTaskExecutor taskExecutor) - これを使用して、非同期操作用のスレッド プールを構成できます。
AsyncRestTemplate で接続プールとスレッド プールの両方を構成できる方法があるかどうか知りたいです。
よろしくお願いします。
java - Spring の AsyncRestTemplate が圧縮されたコンテンツで機能しない、json オブジェクトの代わりに圧縮されたコンテンツを取得する
Spring Boot アプリでコンテンツ圧縮を有効にしましたが、すべての API の応答が圧縮されていますが、これらの API を使用してヒットするRestTemplate
と、次のようなコンテンツが得られます
ただし、交換リクエストにヘッダーを設定しながらオブジェクトHttpClientBuilder.create().build()
を作成して追加すると、API自体が文字列を返すため、適切なjsonオブジェクトを文字列形式で受け取ります。RestTemplate
headers.set("Content-Encoding", "gzip"); headers.set("Accept-Encoding", "gzip");
しかし、既存のオブジェクトを使用してオブジェクトをAsyncRestTemplate
作成したとしても、を使用してこれらの API にアクセスしているときに同じ問題に直面しています。AsyncRestTemplate
RestTemplate
私が持っている1つの方法は、自分でスレッドプールを実装してから、を使用してリクエストをヒットするRestTemplate
ことですが、スレッドメカニズムを実装せずに圧縮コンテンツの代わりにjsonオブジェクトを取得する方法があることを知りたいです.
以下は完全なコードです
spring - AsyncRestTemplate が DELETE エンドポイントを呼び出していない
火と忘れの方法で削除メソッドを使用して残りのエンドポイントを呼び出す必要があります。結果は気にしない。AsyncRestTemplate を使用しようとしていますが、サーバー側が呼び出されていません。RestTemplate に切り替えると、すべてが機能します。それから私は応答を待っているときに気づいた
それも機能しています。PUT エンドポイントの呼び出しは問題なく機能します (get() メソッドを呼び出す必要はありません)。次に、応答を待ちたくないので、タイムアウトを使用しようとしました。
私のマシンでは、1 ミリ秒のタイムアウトを設定すると、50% の確率でエンドポイントが呼び出されます。50 ミリ秒では 100% の可能性が高すぎます...
何が問題なのですか?
編集:
私も試しました
これは機能しました。
get() メソッドを呼び出さないと機能しませんでした。