FF or the Framework Frenzy, Framework Face-off, Framework Fireworks, or ... the comparison and similarities between Jakarta EE Web Profile, Spring Boot, Quarkus, Kotlin Ktor, and a few others regarding creating backend applications with REST endpoints.
A comparison between the start up time (time until first request is handled), memory usage and application size of various frameworks. The application had 3 endpoints, a hello world endpoint returning a String, an endpoint return a JSON string serialised from an object instance, and a POST endpoint processing a JSON (and returning a String)
Data gathering is done using a Python script.
See the directory startup-time readme for the details.
Frameworks
- Spring Boot 3
- Quarkus 2.16
- Ktor
- HttpServer from Java
- Payara 6
- OpenLiberty
- Wildly 27
- Helidon 3.1
- Piranha
- Micronaut
A series of examples with Kotlin Ktor for the Jakarta EE developers.
See also blogs : Coming soon
Example of defining routing and using JSON payloads utilizing similar functionality as JSON-B and JSON-P.
See also blog : Why don’t you create your next Backed-end application with Kotlin and Ktor?
Rest endpoints using authentication/authorization based on JWT token from Keycloak in header.
Application with
- Payara 6 and MicroProfile 6
- Atbash Runtime (with and without Jakarta Runner feature)
- Spring Boot 3
- Quarkus 3
- Ktor
Directory keycloak contains the info and scripts to setup and configure Keycloak and test out the application on each runtime.
- See
commands.txtfor the start of Keycloak as Docker container - See
commands.txtfor the setup of a Python environment - python scripts to setup Keycloak and test the application endpoints.