CRaC Project Dramatically Speeds Up Java Application (Re)start Times

Опубликовано: 25 Март 2026
на канале: Frank Delporte
200
4

Coordinated Restore at Checkpoint (CRaC) is a JDK project, initiated by Azul. With CRaC, you can start Java programs with a shorter time to first transaction, combined with less time and resources to achieve full code speed. This is achieved by taking a snapshot (checkpoint) of a fully warmed-up Java process and launching one or more new JVMs from that snapshot.

Although the primary goal of CRaC is to improve the startup speed of Java applications, I created a different kind of example to illustrate how it can also help speed up applications that need to load a lot of data in memory. I executed the application on a Raspberry Pi and recorded the differences in load time compared to the initial request loaded from a JAR, and the requests when restarted from a checkpoint.

Sources from this example application:
https://github.com/FDelporte/crac-exa...

You can find the detailed explanation in this blog post:
https://webtechie.be/post/2025-02-19-...

More links:

Azul Docs CRaC
https://docs.azul.com/core/crac/crac-...
Azul announcement
https://www.azul.com/blog/reduce-java...
Blog on webtechie.be, CRaC on Raspberry Pi, Part 1
https://webtechie.be/post/2023-06-15-...
Blog on webtechie.be, CRaC on Raspberry Pi, Part 2
https://webtechie.be/post/2023-10-16-...

#JavaOnRaspberryPi