Quarkus
| Quarkus | |
|---|---|
| Developer | Red Hat |
| Initial release | March 23, 2019[1] |
| Stable release | 3.32.4[2]
/ March 18, 2026 |
| Written in | Java |
| Platform | Java |
| Type | Application Framework |
| License | Apache License 2.0 |
| Website | quarkus |
| Repository | Quarkus Repository |
Quarkus[3][4][5] is a Java framework for Kubernetes. Key technology components surrounding it are OpenJDK HotSpot and GraalVM. Quarkus provides developers a unified reactive and imperative programming model to address a wider range of distributed application architectures.
Version history
| Version | Date | Notes |
|---|---|---|
| 0.12 | March 20, 2019 | Initial release |
| 1.0 | Nov 2019 | |
| 2.0 | Jun 2021 | |
| 3.0.1 | Mar 2023 | |
| 3.2.6 | Oct 2023 | LTS (3.2) |
| 2.16.12.Final | October 17, 2023 | |
| 3.2.7.Final | October 19, 2023 | |
| 3.5.0 | October 25, 2023 | |
| 3.2.9.Final | November 17, 2023 | |
| 3.6.0 | November 29, 2023 | |
| 3.2.10.Final | Jan 2024 | |
| 3.7.1 | Jan 2024 | |
| 3.8.1 | Feb 2024 | LTS (3.8) |
| 3.10.0 | Apr 2024 | |
| 3.13.0 | July 2024 | |
| 3.15.2 | Nov 2024 | LTS (3.15) |
| 3.16.2 | Nov 2024 | |
| 3.17.7 | Jan 2025 | |
| 3.18.3 | Feb 2025 | |
| 3.22.3 | May 2025 | |
| 3.25.3 | Aug 2025 | LTS (3.20.2.1) |
| 3.28.1 | Sep 2025 | LTS (3.27.0) |
| 3.29.3 | Nov 2025 | LTS (3.27.1) |
| 3.30.6 | Jan 2026 |
Distributions
GraalVM Community Edition (CE) and GraalVM Enterprise Edition (EE)
GraalVM is a Java Virtual Machine for compiling and running applications written in different languages to a native machine binary. GraalVM Community Edition has varying support and licensing requirements.
Mandrel
Mandrel is a downstream distribution of GraalVM CE, supporting the same capabilities to build native executables but based on the open source OpenJDK. Mandrel aims to make GraalVM easy to consume by Quarkus applications by only including GraalVM CE components that Quarkus needs. Red Hat began commercial support for using Mandrel to build native Quarkus applications since the Quarkus 1.7 release in October 2020.[6]
Design pillars
Container first
Quarkus was designed around the container-first and Kubernetes-native philosophy, optimizing for low memory usage and fast startup times.
As much processing as possible is done at build time, including taking a closed-world assumption approach to building and running applications. This optimization means that, in most cases, all code that does not have an execution path at runtime isn't loaded into the JVM.
In Quarkus, classes used only at application startup are invoked at build time and not loaded into the runtime JVM. Quarkus also avoids reflection as much as possible, instead favoring static class binding. These design principles aim to reduce the size, and ultimately the memory footprint, of the application running on the JVM while also enabling Quarkus to be natively-native.
Quarkus' uses the native image capability of GraalVM to compile JVM bytecode to a native machine binary. GraalVM aggressively removes any unreachable code found within the application's source code as well as any of its dependencies. Combined with Linux containers and Kubernetes, a Quarkus application runs as a native Linux executable, eliminating the JVM.
Built on standards
Quarkus rests on an ecosystem of technologies, standards, libraries, and APIs, including Contexts & Dependency Injection (CDI), Jax-rs, Java persistence api (JPA), Java Transaction API (JTA), Apache Camel, and Hibernate.
Quarkus is an Ahead-of-time compilation (AOT) platform, optimizing code for the JVM as well as compiling to native code for improved performance. All of the underlying technologies are AOT-enabled.[7]
References
- ^ "Quarkus Github repository, First release commit". github.com.
- ^ "Quarkus Github repository, Last release commit". github.com.
- ^ "LogicMonitor, Quarkus vs. Spring". logicmonitor.com. January 28, 2023.
- ^ "Guide to QuarkusIO". Baeldung. May 5, 2019.
- ^ "Getting started with QuarkusIO". mastertheboss.com. November 15, 2022.
- ^ "Quarkus Github repository, Release 1.7.0.Final". github.com.
- ^ "What is Quarkus?". IONOS Digitalguide. January 13, 2022. Retrieved August 22, 2022.
Bibliography
- Marc Nuri San Felix (Nov 2022). Full Stack Quarkus and React. Packt. ISBN 9781800562738
- Eric Deandrea, Daniel Oh, Charles Moulliard (August 2021). Quarkus for Spring Developers 1st Edition. Red Hat Developer
- John Clingan, Ken Finnigan (December 2021). Kubernetes Native Microservices With Quarkus and MicroProfile 1st Edition. Manning. ISBN 9781617298653.
- Tayo Koleoso (August 26, 2020). Beginning Quarkus Framework: Build Cloud-Native Enterprise Java Applications and Microservices 1st Edition. Apress ISBN 1484260317.
- Alex Soto Bueno, Jason Porter (July 14, 2020). Quarkus Cookbook: Kubernetes-Optimized Java Solutions 1st Edition. OReilly. ISBN 1492062650.
- Francesco Marchioni (December 13, 2019), Hands-On Cloud-Native Applications with Java and Quarkus: Build high performance, Kubernetes-native Java serverless applications 1st Edition. Packt. ISBN 1838821473