クラス ReactorResourceFactory
- 実装されたすべてのインターフェース:
DisposableBean
、InitializingBean
、Lifecycle
- 既知の直属サブクラス
ReactorResourceFactory
ApplicationContext
のライフサイクル内で Reactor Netty リソース(イベントループスレッドの LoopResources
、接続プールの ConnectionProvider
など)を管理するファクトリ。 このファクトリは InitializingBean
、DisposableBean
、Lifecycle
を実装しており、通常は Spring 管理の Bean として宣言されることが期待されます。
Lifecycle
の停止 / 再起動後、構成された LoopResources
および ConnectionProvider
の新しいインスタンスが作成されるため、それらへの参照を更新する必要があることに注意してください。
- 導入:
- 6.1
- 作成者:
- Rossen Stoyanchev, Brian Clozel, Sebastien Deleuze
コンストラクターのサマリー
メソッドのサマリー
修飾子と型メソッド説明void
addGlobalResourcesConsumer
(ConsumerSE<reactor.netty.http.HttpResources> consumer) 起動時にグローバル Reactor Netty リソースを構成するためのコンシューマーを追加します。void
void
destroy()
Bean の破棄時に、包含BeanFactory
によって呼び出されます。reactor.netty.resources.ConnectionProvider
設定されたConnectionProvider
を返します。reactor.netty.resources.LoopResources
設定されたLoopResources
を返します。boolean
このコンポーネントが現在実行されているかどうかを確認します。boolean
このファクトリがグローバルHttpResources
ホルダーを公開するかどうか。void
setConnectionProvider
(reactor.netty.resources.ConnectionProvider connectionProvider) これは、外部で管理されているConnectionProvider
インスタンスを提供する場合に使用します。void
setConnectionProviderSupplier
(SupplierSE<reactor.netty.resources.ConnectionProvider> supplier) グローバルリソースに参加したくない場合や、管理対象のConnectionProvider
の作成をカスタマイズしたい場合に、これを使用します。void
setLoopResources
(reactor.netty.resources.LoopResources loopResources) このオプションは、外部で管理されているLoopResources
インスタンスを提供する場合に使用します。void
setLoopResourcesSupplier
(SupplierSE<reactor.netty.resources.LoopResources> supplier) グローバルリソースに参加したくない場合や、管理対象のLoopResources
の作成をカスタマイズしたい場合に、これを使用します。void
setShutdownQuietPeriod
(DurationSE shutdownQuietPeriod) リソースをシャットダウンする前に待機する時間を設定します。void
setShutdownTimeout
(DurationSE shutdownTimeout) shutdownQuietPeriod
中にタスクが送信されたかどうかに関係なく、基になるリソースが破棄されるまで待機する最大時間を構成します。void
setUseGlobalResources
(boolean useGlobalResources) HttpResources
を介してグローバル Reactor Netty リソースを使用するかどうか。void
start()
このコンポーネントを起動します。void
stop()
このメソッドを返すとコンポーネントが完全に停止するように、通常は同期的にこのコンポーネントを停止します。
コンストラクターの詳細
ReactorResourceFactory
public ReactorResourceFactory()
メソッドの詳細
setUseGlobalResources
public void setUseGlobalResources(boolean useGlobalResources) HttpResources
を介してグローバル Reactor Netty リソースを使用するかどうか。デフォルトは "true" です。この場合、このファクトリは Spring の
ApplicationContext
ライフサイクル内のグローバル Reactor Netty リソースを初期化および停止します。"false" に設定すると、ファクトリはグローバルリソースから独立してリソースを管理します。- パラメーター:
useGlobalResources
- グローバルリソースを公開および管理するかどうか- 関連事項:
isUseGlobalResources
public boolean isUseGlobalResources()このファクトリがグローバルHttpResources
ホルダーを公開するかどうか。addGlobalResourcesConsumer
起動時にグローバル Reactor Netty リソースを構成するためのコンシューマーを追加します。このオプションを使用すると、setUseGlobalResources(boolean)
も有効になります。- パラメーター:
consumer
- 適用するコンシューマー- 関連事項:
setConnectionProviderSupplier
public void setConnectionProviderSupplier(SupplierSE<reactor.netty.resources.ConnectionProvider> supplier) グローバルリソースに参加したくない場合や、管理対象のConnectionProvider
の作成をカスタマイズしたい場合に、これを使用します。デフォルトでは、
ConnectionProvider.elastic("http")
が使用されます。userGlobalResources=false
またはsetConnectionProvider(ConnectionProvider)
が設定されている場合、このオプションは無視されることに注意してください。- パラメーター:
supplier
- 使用するサプライヤー
setConnectionProvider
public void setConnectionProvider(reactor.netty.resources.ConnectionProvider connectionProvider) これは、外部で管理されているConnectionProvider
インスタンスを提供する場合に使用します。- パラメーター:
connectionProvider
- そのまま使用する接続プロバイダー
getConnectionProvider
public reactor.netty.resources.ConnectionProvider getConnectionProvider()設定されたConnectionProvider
を返します。setLoopResourcesSupplier
グローバルリソースに参加したくない場合や、管理対象のLoopResources
の作成をカスタマイズしたい場合に、これを使用します。デフォルトでは、
LoopResources.create("reactor-http")
が使用されます。userGlobalResources=false
またはsetLoopResources(LoopResources)
が設定されている場合、このオプションは無視されることに注意してください。- パラメーター:
supplier
- 使用するサプライヤー
setLoopResources
public void setLoopResources(reactor.netty.resources.LoopResources loopResources) このオプションは、外部で管理されているLoopResources
インスタンスを提供する場合に使用します。- パラメーター:
loopResources
- そのまま使用するループリソース
getLoopResources
public reactor.netty.resources.LoopResources getLoopResources()設定されたLoopResources
を返します。setShutdownQuietPeriod
リソースをシャットダウンする前に待機する時間を設定します。shutdownQuietPeriod
中にタスクが送信された場合、そのタスクは受け入れられることが保証され、shutdownQuietPeriod
が最初からやり直します。デフォルトでは、これは 2 秒の
LoopResources.DEFAULT_SHUTDOWN_QUIET_PERIOD
に設定されていますが、システムプロパティReactorNetty.SHUTDOWN_QUIET_PERIOD
でオーバーライドすることもできます。setShutdownTimeout
shutdownQuietPeriod
中にタスクが送信されたかどうかに関係なく、基になるリソースが破棄されるまで待機する最大時間を構成します。デフォルトでは、これは 15 秒の
LoopResources.DEFAULT_SHUTDOWN_TIMEOUT
に設定されていますが、システムプロパティReactorNetty.SHUTDOWN_TIMEOUT
でオーバーライドすることもできます。afterPropertiesSet
public void afterPropertiesSet()インターフェースからコピーされた説明:InitializingBean
すべての Bean プロパティを設定し、BeanFactoryAware
、ApplicationContextAware
などを満たした後、包含BeanFactory
によって呼び出されます。このメソッドにより、Bean インスタンスは、すべての Bean プロパティが設定されたときに、その全体的な構成の検証と最終的な初期化を実行できます。
- 次で指定:
- インターフェース
InitializingBean
のafterPropertiesSet
destroy
public void destroy()インターフェースからコピーされた説明:DisposableBean
Bean の破棄時に、包含BeanFactory
によって呼び出されます。- 次で指定:
- インターフェース
DisposableBean
のdestroy
start
public void start()インターフェースからコピーされた説明:Lifecycle
このコンポーネントを起動します。コンポーネントがすでに実行されている場合は、例外をスローしないでください。
コンテナーの場合、これは適用されるすべてのコンポーネントに開始シグナルを伝播します。
stop
public void stop()インターフェースからコピーされた説明:Lifecycle
このメソッドを返すとコンポーネントが完全に停止するように、通常は同期的にこのコンポーネントを停止します。非同期停止動作が必要な場合は、SmartLifecycle
とそのstop(Runnable)
バリアントの実装を検討してください。この停止通知は破棄前に送信されるとは限らないことに注意してください。通常のシャットダウンでは、一般的な破棄コールバックが伝播される前に、
Lifecycle
Bean は最初に停止通知を受信します。ただし、コンテキストの存続期間中のホットリフレッシュまたは中断されたリフレッシュ試行では、特定の Bean の destroy メソッドが、停止シグナルを事前に考慮することなく呼び出されます。コンポーネントが実行されていない(まだ開始されていない)場合は、例外をスローしないでください。
コンテナーの場合、これは停止シグナルを適用するすべてのコンポーネントに伝播します。
isRunning
public boolean isRunning()インターフェースからコピーされた説明:Lifecycle
このコンポーネントが現在実行されているかどうかを確認します。コンテナーの場合、これは、適用されるすべてのコンポーネントが現在実行されている場合にのみ、
true
を返します。