Azul and Java on CRaC

Open-source Java platform provider Azul has announced that its Zulu downstream distribution of OpenJDK now supports Coordinated Restore at Checkpoint (CRaC) functionality. Azul leads the CRaC Project, which aims to improve Java startup and warmup times with a new standard mechanism-agnostic API that coordinates resources during checkpoint and restore events. The project aims to reduce startup and warmup times to milliseconds.

The CRaC Java API allows a running application to pause, snapshot its state, close files and connections, dump the cache before the checkpoint, and reopen or recover everything when the application is restored from the image—even on a different machine. The project was initiated by Azul in 2021 to speed up JVM startup times in a microservice environment.

"Improving startup and warmup times is a perennial concern for Java developers, and CRaC provides a powerful new approach for solving this challenge," Simon Ritter, Azul's Deputy CTO, said in a statement. "This produces a host of benefits. When serverless functions start faster, you pay less at scale. If your container takes less time to warm up, you need fewer instances to handle the same load from the beginning. When servers restart faster, you can perform more frequent updates to your application code and infrastructure. Taken together this means more efficient development and deployment of Java applications."

Azul made commercially supported Azul Zulu Builds of OpenJDK featuring CRaC functionality generally available for Java 17 on Linux x64 platforms in its April 2023 quarterly update release. That functionality is now available for development, prototyping and production. Azul says it will be adding CRaC capabilities for additional Java versions in both Azul Zulu Builds of OpenJDK and Azul Platform Prime (a highly optimized JVM and elastic runtime) throughout 2023.

Sunnyvale, Calif.-based Azul specializes in Java and Java and the Java Virtual Machine (JVM). It bills itself as the only company 100% focused on Java. Azul Zulu  is a Java Development Kit (JDK), and a compliant implementation of the Java Standard Edition (SE) specification that contains all the Java components needed to build and run Java SE applications. The Zulu Community edition is available free under the GPLv2 with classpath exception (CPE) license. The Zulu Enterprise edition is a commercially supported binary distro with SLAs for how quickly updates will be made available after Oracle's updates. And there's a Zulu Embedded edition, which supports specific chipsets and hardware configurations for embedded applications.

About the Author

John K. Waters is the editor in chief of a number of sites, with a focus on high-end development, AI and future tech. He's been writing about cutting-edge technologies and culture of Silicon Valley for more than two decades, and he's written more than a dozen books. He also co-scripted the documentary film Silicon Valley: A 100 Year Renaissance, which aired on PBS.  He can be reached at [email protected].