Red Hat has launched a Quarkus project that makes available a Java framework optimized to run on top of Kubernetes.
Quarkus is a Kubernetes-Native Java framework tailored for Java virtual machines (JVMs) such as GraalVM and HotSpot. Mark Little, vice president of engineering for Red Hat, says Quarkus optimizes Java specifically for Kubernetes by reducing the size of both the Java application and container image footprint, eliminating some of the Java programming baggage that has built up over the years, and reducing the amount of memory required to run those images.
The tradeoff, says Little, is Quarkus results in an instance of Java that doesn’t run everywhere. Rather, Quarkus relies on the inherently portability provided by Kubernetes.
Quarkus is a full-stack framework made up of best-of-breed libraries incorporating Eclipse MicroProfile, JPA/Hibernate, JAX-RS/RESTEasy, Eclipse Vert.x, Netty and other projects to create a provide a more prescriptive approach to running Java on Kubernetes, says Little. Quarkus also includes an extension framework that enables third-party authors to extend it.
Little describes Quarkus as the first available container-first approach to building Java applications. This approach makes it much easier to build microservices-based applications written in Java as well as enabling those applications to invoke functions running on serverless computing frameworks, he says. Because the Quarkus framework has been optimized for those environments, developers should expect to see startup times that are measured in tens of milliseconds versus the seconds it currently takes to startup a JVM.
While there have never been more programming languages in use, Java remains the dominant programming language employed for backend applications and services within the enterprise. Little says Red Hat has been encouraged to innovate in this area following the Eclipse Foundation assuming control over Java from Oracle last year. In fact, Little says a renaissance era for Java is now emerging as more vendors apply research and development resources toward Java technology initiatives.
Projects such as Quarkus should help spur significant adoption of Kubernetes in enterprise IT environment. While many web-based applications rely on more modern programming languages, Java remains the workhorse programming environment for most enterprises. Quarkus makes it possible to employ a more flexible microservices-based approach to building Java applications that doesn’t adversely impact performance.
It’s not clear yet whether the rest of the application development community will throw their collective weight behind Quarkus. But following its pending acquisition by IBM, Red Hat—the second largest contributor to Java after Oracle—will include Quarkus as part of a broad portfolio of application development tools and platforms.
In the meantime, enterprise developers who aren’t excited about having to master additional programming languages might view Quarkus with some relief. Rather than seeing years of time and effort developing Java expertise go to waste, it’s clear Java will still be relevant going forward no matter how application code is packaged and delivered.