Testing web server implementations for Kotlin
So - coming from C# - we were wondering about the performance of web server frameworks in Java and Kotlin as they are measured by HTTP Arena (https://http-arena.com/#sort=rps:-1&tuned=0), as there are pretty fast engines for that ecosystem, such as netty.
To see how fast we can get on the JVM we did two projects:
- ktron (https://github.com/MDA2AV/Ktron), a simple framework based on the ioxide runtime (https://github.com/MDA2AV/ioxide) (io_uring), with the goal of pushing the limits of what is possible with the JVM
- genhttp-kt (https://genhttp.org/kotlin), a functional port of the GenHTTP webserver for C# with high level functionality such as Open API, JWT etc. ... with GenHTTP being used by some projects and companies in production workloads
We were quite happy to see that both projects turned out pretty fast, with ktron currently leading the board, faster than any Rust or Go implementation, and genhttp-kt-netty ranked #12.
Note that both projects are experimental, so we are happy to get feedback on whether such projects would be useful for the Kotlin/Java ecosystem in general.
— u/Ok_Tour_8029
So - coming from C# - we were wondering about the performance of web server frameworks in Java and Kotlin as they are measured by HTTP Arena (https://http-arena.com/#sort=rps:-1&tuned=0), as there are pretty fast engines for that ecosystem, such as netty.
To see how fast we can get on the JVM we did two projects:
- ktron (https://github.com/MDA2AV/Ktron), a simple framework based on the ioxide runtime (https://github.com/MDA2AV/ioxide) (io_uring), with the goal of pushing the limits of what is possible with the JVM
- genhttp-kt (https://genhttp.org/kotlin), a functional port of the GenHTTP webserver for C# with high level functionality such as Open API, JWT etc. ... with GenHTTP being used by some projects and companies in production workloads
We were quite happy to see that both projects turned out pretty fast, with ktron currently leading the board, faster than any Rust or Go implementation, and genhttp-kt-netty ranked #12.
Note that both projects are experimental, so we are happy to get feedback on whether such projects would be useful for the Kotlin/Java ecosystem in general.
— u/Ok_Tour_8029