uring
netty-incubator-transport-io_uring | uring | |
---|---|---|
4 | 1 | |
177 | 127 | |
0.0% | - | |
7.9 | 10.0 | |
13 days ago | about 3 years ago | |
Java | Go | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
netty-incubator-transport-io_uring
-
Use io_uring for network I/O
- For network I/O, Netty as an incubating transport that is promising [1].
- For disk I/O, JDK's Loom project [2] has mentioned its plan to rely on io_uring on Linux [3], but there's no ETA AFAIK.
[1] https://github.com/netty/netty-incubator-transport-io_uring
-
Zero-copy network transmission with io_uring
Yes, I think io_uring is slowly making its way onto Java ecosystem. Example: https://github.com/netty/netty-incubator-transport-io_uring
I guess it will go into the JVM too.
-
Java Virtual Threads Preview
Maybe maybe not. If you want to take advantage of things like io_uring you're going to be doing that with a JNI lib. Such as this Netty incubator support for it https://github.com/netty/netty-incubator-transport-io_uring
-
Advances In The ZIO 2.0 Scheduler
There is a Java library from Netty which has implemented io_uring and could be borrowed.
uring
-
Use io_uring for network I/O
We've been able to do a lot with this:
https://github.com/dshulyak/uring
What are some alternatives?
cats-effect - The pure asynchronous runtime for Scala
nio_uring - High performance I/O library for Java using io_uring under the hood
cats - Lightweight, modular, and extensible library for functional programming.
hella-http - Hella fast HTTP server library for Java
ZIO - ZIO — A type-safe, composable library for async and concurrent programming in Scala
go - The Go programming language
eRPC - Efficient RPCs for datacenter networks
libuv - Cross-platform asynchronous I/O
liburing
rr - Record and Replay Framework
glommio - Glommio is a thread-per-core crate that makes writing highly parallel asynchronous applications in a thread-per-core architecture easier for rustaceans.