クラス ReactorNettyClientRequestFactory
- 実装済みのインターフェース一覧:
Lifecycle、Phased、SmartLifecycle、ClientHttpRequestFactory
ClientHttpRequestFactory の Reactor-Netty 実装。 このクラスは SmartLifecycle を実装しており、JVM チェックポイントリストアをサポートするために、オプションで Spring 管理の Bean として宣言できます。
- 導入:
- 6.1
- 作成者:
- Arjen Poutsma, Sebastien Deleuze
フィールド概要
インターフェース org.springframework.context.SmartLifecycle から継承されたフィールド
DEFAULT_PHASEコンストラクター概要
コンストラクターコンストラクター説明圧縮が有効になっているデフォルトのHttpClientを使用して、ReactorNettyClientRequestFactoryの新しいインスタンスを作成します。ReactorNettyClientRequestFactory(ReactorResourceFactory resourceFactory, FunctionSE<reactor.netty.http.client.HttpClient, reactor.netty.http.client.HttpClient> mapper) イベントループスレッド用のLoopResourcesや接続プール用のConnectionProviderを含む、外部で管理される Reactor Netty リソースを持つコンストラクター。ReactorNettyClientRequestFactory(reactor.netty.http.client.HttpClient httpClient) 指定されたHttpClientに基づいてReactorNettyClientRequestFactoryの新しいインスタンスを作成します。方法の概要
修飾子と型メソッド説明createRequest(URISE uri, HttpMethod httpMethod) 指定された URI および HTTP メソッドの新しいClientHttpRequestを作成します。intgetPhase()このライフサイクルオブジェクトが実行されるはずのフェーズを返します。booleanbooleanこのコンポーネントが現在実行されているかどうかを確認します。voidsetConnectTimeout(int connectTimeout) 基になる接続タイムアウトをミリ秒単位で設定します。voidsetConnectTimeout(DurationSE connectTimeout) 基になる接続タイムアウトをミリ秒単位で設定します。voidsetExchangeTimeout(long exchangeTimeout) HTTP 交換のタイムアウトをミリ秒単位で設定します。voidsetExchangeTimeout(DurationSE exchangeTimeout) HTTP 交換のタイムアウトを設定します。voidsetReadTimeout(long readTimeout) 基になる読み取りタイムアウトをミリ秒単位で設定します。voidsetReadTimeout(DurationSE readTimeout) 基礎となる読み取りタイムアウトをDurationとして設定します。voidstart()このコンポーネントを起動します。voidstop()このメソッドを返すとコンポーネントが完全に停止するように、通常は同期的にこのコンポーネントを停止します。final voidstop(RunnableSE callback) Lifecycle コンポーネントが現在実行中の場合、停止する必要があることを示します。
コンストラクターの詳細
ReactorNettyClientRequestFactory
public ReactorNettyClientRequestFactory()圧縮が有効になっているデフォルトのHttpClientを使用して、ReactorNettyClientRequestFactoryの新しいインスタンスを作成します。ReactorNettyClientRequestFactory
public ReactorNettyClientRequestFactory(reactor.netty.http.client.HttpClient httpClient) 指定されたHttpClientに基づいてReactorNettyClientRequestFactoryの新しいインスタンスを作成します。- パラメーター:
httpClient- ベースとなるクライアント
ReactorNettyClientRequestFactory
public ReactorNettyClientRequestFactory(ReactorResourceFactory resourceFactory, FunctionSE<reactor.netty.http.client.HttpClient, reactor.netty.http.client.HttpClient> mapper) イベントループスレッド用のLoopResourcesや接続プール用のConnectionProviderを含む、外部で管理される Reactor Netty リソースを持つコンストラクター。このコンストラクターは、クライアントを Reactor Netty グローバルリソースに参加させたくない場合にのみ使用してください。デフォルトでは、クライアントは
HttpResourcesに保持されている Reactor Netty グローバルリソースに参加します。イベントループの同時実行には固定の共有リソースが優先されるため、これをお勧めします。ただし、Spring ApplicationContext が停止または閉じられたときに Reactor Netty グローバルリソースがシャットダウンされ、Spring ApplicationContext が停止したときに (たとえば JVM チェックポイントリストアを使用して) 適切に再起動されるようにするために、globalResources=trueを使用してReactorResourceFactoryBean を宣言することを検討してください。- パラメーター:
resourceFactory- リソースを取得するリソースファクトリmapper- 作成されたクライアントをさらに初期化するためのマッパー
メソッドの詳細
setConnectTimeout
public void setConnectTimeout(int connectTimeout) 基になる接続タイムアウトをミリ秒単位で設定します。値 0 は、無限のタイムアウトを指定します。デフォルトは 30 秒です。
- 関連事項:
Transport.option(ChannelOption, Object)ChannelOption.CONNECT_TIMEOUT_MILLIS
setConnectTimeout
基になる接続タイムアウトをミリ秒単位で設定します。値 0 は、無限のタイムアウトを指定します。デフォルトは 30 秒です。
- 関連事項:
Transport.option(ChannelOption, Object)ChannelOption.CONNECT_TIMEOUT_MILLIS
setReadTimeout
public void setReadTimeout(long readTimeout) 基になる読み取りタイムアウトをミリ秒単位で設定します。デフォルトは 10 秒です。
setReadTimeout
基礎となる読み取りタイムアウトをDurationとして設定します。デフォルトは 10 秒です。
setExchangeTimeout
public void setExchangeTimeout(long exchangeTimeout) HTTP 交換のタイムアウトをミリ秒単位で設定します。デフォルトは 30 秒です。
setExchangeTimeout
HTTP 交換のタイムアウトを設定します。デフォルトは 30 秒です。
createRequest
インターフェースからコピーされた説明:ClientHttpRequestFactory指定された URI および HTTP メソッドの新しいClientHttpRequestを作成します。返されたリクエストは、
ClientHttpRequest.execute()を呼び出して書き込み、実行できます。- 次で指定:
- インターフェース
ClientHttpRequestFactoryのcreateRequest - パラメーター:
uri- リクエストを作成する URIhttpMethod- 実行する HTTP メソッド- 戻り値:
- 作成されたリクエスト
- 例外:
IOExceptionSE- I/O エラーの場合
start
public void start()インターフェースからコピーされた説明:Lifecycleこのコンポーネントを起動します。コンポーネントがすでに実行されている場合は、例外をスローしないでください。
コンテナーの場合、これは適用されるすべてのコンポーネントに開始シグナルを伝播します。
stop
public void stop()インターフェースからコピーされた説明:Lifecycleこのメソッドを返すとコンポーネントが完全に停止するように、通常は同期的にこのコンポーネントを停止します。非同期停止動作が必要な場合は、SmartLifecycleとそのstop(Runnable)バリアントの実装を検討してください。この停止通知は破棄前に送信されるとは限らないことに注意してください。通常のシャットダウンでは、一般的な破棄コールバックが伝播される前に、
LifecycleBean は最初に停止通知を受信します。ただし、コンテキストの存続期間中のホットリフレッシュまたは中断されたリフレッシュ試行では、特定の Bean の destroy メソッドが、停止シグナルを事前に考慮することなく呼び出されます。コンポーネントが実行されていない(まだ開始されていない)場合は、例外をスローしないでください。
コンテナーの場合、これは停止シグナルを適用するすべてのコンポーネントに伝播します。
stop
インターフェースからコピーされた説明:SmartLifecycleLifecycle コンポーネントが現在実行中の場合、停止する必要があることを示します。提供されたコールバックは、
LifecycleProcessorによって使用され、共通のシャットダウン順序値を持つすべてのコンポーネントの順序付けられた、潜在的に同時のシャットダウンをサポートします。コールバック は、SmartLifecycleコンポーネントが実際に停止した後に実行する必要があります。LifecycleProcessorは、stopメソッドのこのバリアントのみを呼び出します。つまり、SmartLifecycle実装では、このメソッドの実装内に明示的に委譲されない限り、Lifecycle.stop()は呼び出されません。デフォルトの実装は
Lifecycle.stop()に委譲し、呼び出しスレッドで指定されたコールバックをすぐにトリガーします。2 つの間に同期がないことに注意してください。カスタム実装では、少なくとも共通のライフサイクルモニター(存在する場合)内に同じ手順を入れたい場合があります。- 次で指定:
- インターフェース
SmartLifecycleのstop - 関連事項:
isRunning
public boolean isRunning()インターフェースからコピーされた説明:Lifecycleこのコンポーネントが現在実行されているかどうかを確認します。コンテナーの場合、これは、適用されるすべてのコンポーネントが現在実行されている場合にのみ、
trueを返します。isAutoStartup
public boolean isAutoStartup()インターフェースからコピーされた説明:SmartLifecycletrueが含まれるApplicationContextがリフレッシュされるときに、このLifecycleコンポーネントがコンテナーによって自動的に開始される場合、trueを返します。falseの値は、プレーンLifecycle実装に類似した、明示的なLifecycle.start()呼び出しを介してコンポーネントが開始されることを意図していることを示します。デフォルトの実装は
trueを返します。getPhase
public int getPhase()インターフェースからコピーされた説明:SmartLifecycleこのライフサイクルオブジェクトが実行されるはずのフェーズを返します。デフォルトの実装は、通常の
Lifecycle実装の後にstop()コールバックを実行させるために、SmartLifecycle.DEFAULT_PHASEを返します。- 次で指定:
- インターフェース
PhasedのgetPhase - 次で指定:
- インターフェース
SmartLifecycleのgetPhase - 関連事項: