public class ReactorResourceFactory extends ObjectSE implements InitializingBean, DisposableBean
ApplicationContext
のライフサイクル内で Reactor Netty リソース(イベントループスレッドの LoopResources
、接続プールの ConnectionProvider
など)を管理するファクトリ。 このファクトリは InitializingBean
および DisposableBean
を実装し、通常、Spring 管理の Bean として宣言されることが期待されています。
コンストラクターと説明 |
---|
ReactorResourceFactory() |
修飾子と型 | メソッドと説明 |
---|---|
void | addGlobalResourcesConsumer(ConsumerSE<reactor.netty.http.HttpResources> consumer) 起動時にグローバル Reactor Netty リソースを構成するためのコンシューマーを追加します。 |
void | afterPropertiesSet() |
void | destroy() Bean の破棄時に、包含 BeanFactory によって呼び出されます。 |
reactor.netty.resources.ConnectionProvider | getConnectionProvider() 設定された ConnectionProvider を返します。 |
reactor.netty.resources.LoopResources | getLoopResources() 設定された LoopResources を返します。 |
boolean | isUseGlobalResources() このファクトリがグローバル 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 リソースを使用するかどうか。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public void setUseGlobalResources(boolean useGlobalResources)
HttpResources
を介してグローバル Reactor Netty リソースを使用するかどうか。 デフォルトは "true" です。この場合、このファクトリは Spring の ApplicationContext
ライフサイクル内のグローバル Reactor Netty リソースを初期化および停止します。"false" に設定すると、ファクトリはグローバルリソースから独立してリソースを管理します。
useGlobalResources
- グローバルリソースを公開および管理するかどうか addGlobalResourcesConsumer(Consumer)
public boolean isUseGlobalResources()
HttpResources
ホルダーを公開するかどうか。public void addGlobalResourcesConsumer(ConsumerSE<reactor.netty.http.HttpResources> consumer)
setUseGlobalResources(boolean)
も有効になります。consumer
- 適用するコンシューマー setUseGlobalResources(boolean)
public void setConnectionProviderSupplier(SupplierSE<reactor.netty.resources.ConnectionProvider> supplier)
ConnectionProvider
の作成をカスタマイズしたい場合に、これを使用します。 デフォルトでは、ConnectionProvider.elastic("http")
が使用されます。
userGlobalResources=false
または setConnectionProvider(ConnectionProvider)
が設定されている場合、このオプションは無視されることに注意してください。
supplier
- 使用するサプライヤー public void setConnectionProvider(reactor.netty.resources.ConnectionProvider connectionProvider)
ConnectionProvider
インスタンスを提供する場合に使用します。connectionProvider
- そのまま使用する接続プロバイダー public reactor.netty.resources.ConnectionProvider getConnectionProvider()
ConnectionProvider
を返します。public void setLoopResourcesSupplier(SupplierSE<reactor.netty.resources.LoopResources> supplier)
LoopResources
の作成をカスタマイズしたい場合に、これを使用します。 デフォルトでは、LoopResources.create("reactor-http")
が使用されます。
userGlobalResources=false
または setLoopResources(LoopResources)
が設定されている場合、このオプションは無視されることに注意してください。
supplier
- 使用するサプライヤー public void setLoopResources(reactor.netty.resources.LoopResources loopResources)
LoopResources
インスタンスを提供する場合に使用します。loopResources
- そのまま使用するループリソース public reactor.netty.resources.LoopResources getLoopResources()
LoopResources
を返します。public void setShutdownQuietPeriod(DurationSE shutdownQuietPeriod)
shutdownQuietPeriod
中にタスクが送信された場合、そのタスクは受け入れられることが保証され、shutdownQuietPeriod
が最初からやり直します。 デフォルトでは、これは 2 秒の LoopResources.DEFAULT_SHUTDOWN_QUIET_PERIOD
に設定されていますが、システムプロパティ ReactorNetty.SHUTDOWN_QUIET_PERIOD
でオーバーライドすることもできます。
setShutdownTimeout(Duration)
public void setShutdownTimeout(DurationSE shutdownTimeout)
shutdownQuietPeriod
中にタスクが送信されたかどうかに関係なく、基になるリソースが破棄されるまで待機する最大時間を構成します。 デフォルトでは、これは 15 秒の LoopResources.DEFAULT_SHUTDOWN_TIMEOUT
に設定されていますが、システムプロパティ ReactorNetty.SHUTDOWN_TIMEOUT
でオーバーライドすることもできます。
setShutdownQuietPeriod(Duration)
public void afterPropertiesSet()
InitializingBean
BeanFactoryAware
、ApplicationContextAware
などを満たした後、包含 BeanFactory
によって呼び出されます。このメソッドにより、Bean インスタンスは、すべての Bean プロパティが設定されたときに、その全体的な構成の検証と最終的な初期化を実行できます。
InitializingBean
の afterPropertiesSet
public void destroy()
DisposableBean
BeanFactory
によって呼び出されます。DisposableBean
の destroy