Package io.micronaut.http.netty.channel
Class DefaultEventLoopGroupConfiguration
java.lang.Object
io.micronaut.http.netty.channel.DefaultEventLoopGroupConfiguration
- All Implemented Interfaces:
Named,EventLoopGroupConfiguration
@EachProperty(value="micronaut.netty.event-loops",
primary="default")
public class DefaultEventLoopGroupConfiguration
extends Object
implements EventLoopGroupConfiguration
Configuration interface for event loop configuration.
- Since:
- 2.0
- Author:
- graemerocher
-
Field Summary
Fields inherited from interface io.micronaut.http.netty.channel.EventLoopGroupConfiguration
DEFAULT, DEFAULT_LOOP, DEFAULT_SHUTDOWN_QUIET_PERIOD, DEFAULT_SHUTDOWN_TIMEOUT, DEFAULT_THREAD_CORE_RATIO, EVENT_LOOPS -
Constructor Summary
ConstructorsConstructorDescriptionDefault constructor.DefaultEventLoopGroupConfiguration(String name, int numThreads, double threadCoreRatio, @Nullable Integer ioRatio, boolean preferNativeTransport, @Nullable String executor, @Nullable Duration shutdownQuietPeriod, @Nullable Duration shutdownTimeout, boolean loomCarrier) Default constructor.DefaultEventLoopGroupConfiguration(String name, int numThreads, Integer ioRatio, boolean preferNativeTransport, String executor, Duration shutdownQuietPeriod, Duration shutdownTimeout) Deprecated. -
Method Summary
Modifier and TypeMethodDescriptiongetName()intdoubleThe number of threads per core to use ifEventLoopGroupConfiguration.getNumThreads()is set to 0.booleanboolean
-
Constructor Details
-
DefaultEventLoopGroupConfiguration
@ConfigurationInject public DefaultEventLoopGroupConfiguration(@Parameter String name, @Bindable(defaultValue="0") int numThreads, @Bindable(defaultValue="1.0") double threadCoreRatio, @Nullable @Nullable Integer ioRatio, @Bindable(defaultValue="false") boolean preferNativeTransport, @Nullable @Nullable String executor, @Nullable @Nullable Duration shutdownQuietPeriod, @Nullable @Nullable Duration shutdownTimeout, @Bindable(defaultValue="false") boolean loomCarrier) Default constructor.- Parameters:
name- The name of the groupnumThreads- The number of threadsthreadCoreRatio- The number of threads per core to use ifgetNumThreads()is set to 0.ioRatio- The IO ratio (optional)preferNativeTransport- Whether native transport is to be preferredexecutor- A named executor service to use for event loop threads (optional). This property is very specialized. In particular, it will not solve read timeouts or fix blocking operations on the event loop, in fact it may do the opposite. Don't use unless you really know what this does.shutdownQuietPeriod- The shutdown quiet periodshutdownTimeout- The shutdown timeout (must be >= shutdownQuietPeriod)loomCarrier- When set totrue, use a special experimental event loop that can also execute virtual threads, in order to improve virtual thread performance.
-
DefaultEventLoopGroupConfiguration
@Deprecated public DefaultEventLoopGroupConfiguration(String name, int numThreads, Integer ioRatio, boolean preferNativeTransport, String executor, Duration shutdownQuietPeriod, Duration shutdownTimeout) Deprecated. -
DefaultEventLoopGroupConfiguration
public DefaultEventLoopGroupConfiguration()Default constructor.
-
-
Method Details
-
getNumThreads
public int getNumThreads()- Specified by:
getNumThreadsin interfaceEventLoopGroupConfiguration- Returns:
- The number of threads for the event loop
-
getThreadCoreRatio
public double getThreadCoreRatio()Description copied from interface:EventLoopGroupConfigurationThe number of threads per core to use ifEventLoopGroupConfiguration.getNumThreads()is set to 0.- Specified by:
getThreadCoreRatioin interfaceEventLoopGroupConfiguration- Returns:
- The thread-to-core ratio
-
getIoRatio
- Specified by:
getIoRatioin interfaceEventLoopGroupConfiguration- Returns:
- The I/O ratio.
-
getExecutorName
- Specified by:
getExecutorNamein interfaceEventLoopGroupConfiguration- Returns:
- The name of the executor to use.
-
isPreferNativeTransport
public boolean isPreferNativeTransport()- Specified by:
isPreferNativeTransportin interfaceEventLoopGroupConfiguration- Returns:
- Whether to prefer the native transport
-
getName
-
getShutdownQuietPeriod
- Specified by:
getShutdownQuietPeriodin interfaceEventLoopGroupConfiguration- Returns:
- The shutdown quiet period
-
getShutdownTimeout
- Specified by:
getShutdownTimeoutin interfaceEventLoopGroupConfiguration- Returns:
- The shutdown timeout (must be >= shutdownQuietPeriod)
-
isLoomCarrier
public boolean isLoomCarrier()- Specified by:
isLoomCarrierin interfaceEventLoopGroupConfiguration- Returns:
- When set to
true, use a special experimental event loop that can also execute virtual threads, in order to improve virtual thread performance.
-