Next-level Kubernetes native Java framework – Quarkus brings Java on a subatomic level!
In response to the call for Java evolution -at the age of Kubernetes, microservices, serverless, and cloud-native application development- Red Hat announces the release of Quarkus. Meet the Kubernetes native Java framework that brings Java on a subatomic level!
At the age of Kubernetes, microservices, serverless, and cloud-native application development that can deliver higher levels of productivity and efficiency, than the standard monolithic applications build on Java, those rapidly evolving trends call to rethink how Java can be best utilized to address these new deployment environments and application architectures.
In response to this call for evolution, Red Hat announces the release of Quarkus.
According to the official announcement,
Quarkus is a Kubernetes Native Java framework tailored for GraalVM and HotSpot, crafted from best-of-breed Java libraries and standards. The goal of Quarkus is to make Java a leading platform in Kubernetes and serverless environments while offering developers a unified reactive and imperative programming model to optimally address a wider range of distributed application architectures.
Let’s have a look at what this new tool brings to the Java ecosystem.
Making Java more relevant than ever
Quarkus offers a number of interesting features.
Container first – Minimal footprint Java applications optimal for running in containers featuring significant runtime efficiencies such as:
- Fast Startup (tens of milliseconds) allows automatic scaling up and down of microservices on containers and Kubernetes as well as FaaS on-the-spot execution
- Low memory utilization helps optimize container density in microservices architecture deployments requiring multiple containers
- Smaller application and container image footprint
Cloud native – Embraces the 12-factor architecture in environments like Kubernetes.
Unifies imperative and reactive – Designed to seamlessly bring the two models together in the same platform, resulting in strong leverage within an organization.
Standards-based – Leveraging best of breed libraries you love and use wired on a standard backbone – these include Eclipse MicroProfile, JPA/Hibernate, JAX-RS/RESTEasy, Eclipse Vert.x, Netty, and more. Quarkus also includes an extension framework that third-party framework authors can leverage to extend it. The Quarkus extension framework reduces the complexity for making third-party frameworks run on Quarkus and compile to a GraalVM native binary.
Microservice first – Brings lightning fast startup time and code turn around to Java apps.
But that is not all!
Recognising Kotlin’s has experienced a surge in popularity in the last few years, Quarkus provides first class support for using Kotlin. You can find more information here.
What’s more, Quarkus supports a number of Eclipse MicroProfile 2.1 APIs and standalone specifications. Find all the information here.
There are some things you need to keep in mind before you get started. To start with Quarkus you will need:
- An IDE
- JDK 8 and above
- Apache Maven 3.5.3 or later. Gradle is also supported
- GraalVM for native applications
Head over to the official documentation to find all the relevant information.