The current version of Quarkus, the Kubernetes-native Java framework Red Hat released last year, is now compatible with the latest version of the Eclipse MicroProfile, the Eclipse Foundation announced.
After “a tremendous effort from all the contributors and community,” Quarkus 1.1 is compatible with MicroProfile 3.2.
MicroProfile, which became an Eclipse project in December 2018, aims to provide a baseline platform definition that optimizes enterprise Java for microservices architecture. Eclipse MicroProfile 3.2 was released last November with updates to the Metrics and Health specifications.
Quarkus is a lightweight, high-performance framework designed to reduce the footprint and latency of Java applications, specifically for cloud-native architectures, such as microservices, containers, and serverless. It’s tailored for the GraalVM and HotSpot JVMs, and combines support for the imperative programming model with support for cloud-native, event-driven, asynchronous, and reactive models in the same platform.
Quarkus has supported the MicroProfile from its first release, which included MicroProfile OpenTracing for observing traffic patterns among services, and MicroProfile Metrics for exposing JVM, Quarkus runtime, and custom application metrics to monitoring systems, such as the Prometheus platform. In fact, compatibility with MicroProfile is a key feature of Quarkus, said Ken Finnigan, senior principal software engineer at Red Hat, in a blog post.
“Reaching MicroProfile compatibility with Quarkus has been a milestone we’ve been seeking for a while now,” Finnigan wrote, “including full native compilation support with GraalVM! The team is eager to get back to bringing new innovations into SmallRye for Quarkus to utilize, which may result in new MicroProfile specifications in the future.”
Red Hat’s Quarkus team has been working to add the various MicroProfile specification TCKs to the Quarkus build and “hunt down” the failures they raised, Finnigan said, with fixes in Quarkus, but also for such dependent libraries as SmallRye and RESTEasy.
“With Quarkus we’re seeking the best developer experience for cloud-native development,” he said. “In addition to the MicroProfile APIs we provide support for popular APIs and standards such as Hibernate, Apache Kafka, and a flexible DI implementation that understands CDI annotations and Spring DI. Quarkus was designed to work out of the box with popular Java standards, frameworks, and libraries, such as the Eclipse MicroProfile, but also Apache Kafka, RESTEasy (JAX-RS), Hibernate ORM (JPA), CDI, Spring, Infinispan, and Camel, among others. “Developers can choose the Java framework they want to use when Quarkus applications are running on the JVM,” Red Hat said in a statement when it was first released.