Every page

Sitemap

The whole site on one page, grouped the way the navigation groups it, plus the machine-readable indexes.

Using CRaC

  • Overview The deployment scheme CRaC implies: warm an application up, take an image, ship the image.
  • Runtimes with CRaC CRaC has to be built into the Java runtime. The upstream builds, the vendor builds, and the criu permissions they need.
  • Checkpoint and restore Taking a checkpoint of a running JVM and restoring from the image.
  • Implementing the API Using org.crac to release and reacquire the resources a checkpoint cannot carry.

Frameworks

  • Overview Frameworks and libraries that coordinate with CRaC, so an application inherits the coordination.
  • Spring Boot CRaC support in Spring Boot and Spring Framework.
  • Quarkus CRaC support in Quarkus.
  • Micronaut The Micronaut CRaC module and its build plugin.
  • AWS Lambda Running CRaC-aware Java functions on AWS Lambda.

Examples

Complete applications that take a checkpoint and restore from it.

Reference

  • Overview The things you need once CRaC is working: what to avoid, how to diagnose a failed checkpoint, and how file descriptors and CPU features are handled.
  • Best practices What to do and what to avoid when writing an application that will be checkpointed.
  • Checkpoint engines Choosing the mechanism that takes the image, with -XX:CRaCEngine โ€” what upstream ships, and what a vendor build may add.
  • Debugging failures Diagnosing a checkpoint or restore that did not work.
  • File descriptor policies Telling the runtime what to do with each open file descriptor at checkpoint time.
  • CPU features Why a restored image is tied to CPU features, and how to control that.

About

  • The project What the CRaC project is, who sponsors it, and where the work happens.
  • What CRaC is How checkpoint and restore work, what the API is for, and what a Java application has to coordinate.
  • Measured results Time to first operation, cold start against restore, as measured by the project โ€” with the conditions they were measured under.

Elsewhere