You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Armeria allows a user to choose the underlying transport type between nio, epoll and io_uring, defaulting to epoll on Linux and nio on other OSes. Armeria does not select io_uring even if the current Linux kernel has io_uring support, mainly because there were some test failures when we switched to io_uring.
We need to fix any test failures that occur when io_uring is used, and make it the default transport type on Linux for potentially better performance.
Currently, you can enable io_uring for all tests by inserting two lines in /build.gradle:
def isCi =System.getenv("CI") !=null
allprojects {
// Add common JVM options such as max memory and leak detection.
tasks.withType(JavaForkOptions) {
...
// Enable io_uring by default (only effective in Linux kernel 5.1+) // 👈👈👈
systemProperties 'com.linecorp.armeria.transportType': 'io_uring'// 👈👈👈
}
...
You can confirm io_uring is actually in use from the log message like the following:
INFO com.linecorp.armeria.common.Flags - transportType: IO_URING (sysprops)
Also, the event loop thread names will have -io_uring, e.g. armeria-common-worker-io_uring-3-6.
The text was updated successfully, but these errors were encountered:
Armeria allows a user to choose the underlying transport type between
nio
,epoll
andio_uring
, defaulting toepoll
on Linux andnio
on other OSes. Armeria does not selectio_uring
even if the current Linux kernel has io_uring support, mainly because there were some test failures when we switched toio_uring
.We need to fix any test failures that occur when
io_uring
is used, and make it the default transport type on Linux for potentially better performance.Currently, you can enable
io_uring
for all tests by inserting two lines in/build.gradle
:You can confirm
io_uring
is actually in use from the log message like the following:Also, the event loop thread names will have
-io_uring
, e.g.armeria-common-worker-io_uring-3-6
.The text was updated successfully, but these errors were encountered: