SAN JOSE, Calif., Nov. 6, 2023 /PRNewswire/ -- Slow Java application startup is still an area for improvement for the OpenJDK that is of interest to the community. Coordinated Restore at Checkpoint (CRaC) is an OpenJDK project aimed at reducing startup and warmup times and providing immediate high performance for Java applications.
Spring is one of the most popular Java frameworks, thanks to its deep tech prospects, pre-announced adding CRaC support. This is some of the most anticipated news for Java developers.
Spring Boot and Liberica JDK with CRaC: startup study results
BellSoft is glad to inform you that Liberica JDK 17 and 21 builds enhanced with CRaC are now available for free download. With this progressive version of Liberica JDK, you immediately eliminate the slow startup and warmup issue. The new builds will be available for x86_64 и AArch64 CPU architectures and Linux operating system.
CRaC principles and benefits
CRaC offers a Checkpoint/Restore API to create an image of a running application at an arbitrary point in time ("checkpoint") and then start the image from the checkpoint file ("snapshot"), restoring the state of an application from the point when the checkpoint was made.
Essentially, the application can be paused and restarted from the moment it was paused, and in addition, numerous replicas of this file can be distributed, which is especially relevant for multi-instance deployment.
In addition, it can perform essential preliminary tasks, such as closing network connections and open file descriptors, then return to normal operation after being restored and react to possible changes in the environment since the checkpoint.
Coordinated Checkpoint/Restore makes the application aware of the fact that it is being paused and restarted. This way, the application can cancel the checkpoint if it deems the moment unsuitable for saving the state (when it performs certain operations such as saving the user data, for example).
Liberica JDK with newly added CRaC technology significantly reduces your cloud costs, all due to:
- faster Java start-up and warm-up;
- smaller CPU consumption;
- same SLA on fewer resources.
Our tests of CRaC-ed Liberica JDK with Spring Boot Petclinic show the results of startup reduction from 7.1 seconds to 54 milliseconds without additional configuration!
"In recent years, OpenJDK enhancements were mainly aimed at adapting Java to the cloud. The Graal VM Native Image technology was a success for several years. The Leyden project and the Coordinated Restore and Checkpoint (CRaC) bring another approach to reducing Java application start-up and increasing its performance in the cloud. BellSoft endeavors to deliver such solutions at early stages of adaptation, and we believe that release of Liberica JDK with CRaC technology is very important for the entire OpenJDK community and for Spring users in particular," said Alex Belokrylov, BellSoft's CEO.
Download Liberica JDK 17 and 21 with CRaC now to keep up with the higher speed and safety demands of the cloud environment!
About BellSoft
BellSoft delivers the most complete Java experience with a more secure, reliable, and cost-effective approach to application development on any platform and in any environment. BellSoft is one of the leading contributors to the OpenJDK, and the only vendor that supports current LTS Java versions, legacy JDK 6 & 7 and Liberica NIK. Liberica JDK is the runtime of choice for VMware, Spring Framework, JetBrains, and millions of users worldwide. For more information, visit www.bell-sw.com