O provedor de software Java Azul Systems lançou recentemente o Azul Zulu builds do OpenJDK com suporte a Coordinated Restore at Checkpoint (CRaC). Espera-se que essa nova funcionalidade melhore drasticamente os tempos de inicialização e aquecimento do Java.
O projeto CRaC do OpenJDK permite que uma aplicação em execução faça uma pausa, tire um instantâneo de seu estado e, posteriormente, reinicie em uma máquina diferente, se necessário. A Azul oferece o Azul Zulu builds do OpenJDK com CRaC para Java 17 em plataformas Linux x64. A versão está disponível gratuitamente para download no site da Azul e pode ser utilizada para fins de desenvolvimento, prototipagem e produção, diz a empresa. A Azul também planeia introduzir capacidades CRaC para versões adicionais de Java no futuro. O CRaC, projetado para permitir que as aplicações Java iniciem instantaneamente e em velocidade máxima, inclui uma API Java que permite a coordenação de recursos durante as operações de checkpoint e restauração. O CRaC é adequado para funções sem servidor, contêineres, microsserviços e outros casos de uso.
Ao aproveitar o CRaC, os tempos de inicialização e aquecimento de aplicativos Java podem ser reduzidos de segundos ou minutos para apenas milissegundos. A abordagem CRaC implica em pausar um aplicativo, tirar um instantâneo de seu estado e memória e, em seguida, reiniciá-lo, mesmo em uma máquina completamente diferente. Um ponto de verificação CRaC produz a imagem do processo completo da aplicação, incluindo o estado e a memória. Após a restauração, o estado da aplicação é recarregado e a execução é retomada a partir do ponto em que o ponto de verificação foi inicialmente criado.
Anteriormente, os métodos para lidar com tempos lentos de inicialização e aquecimento do Java incluíam balanceamento de carga, conteinerização, armazenamento em cache, pré-carregamento, pré-otimização e pré-inicialização do código do aplicativo. No entanto, essas medidas não são eficientes e geralmente envolvem uma sobrecarga significativa de infraestrutura, aumentando os custos e diminuindo a eficiência operacional e do desenvolvedor. Além disso, outras abordagens, como a compilação antecipada, não oferecem compatibilidade total com a especificação Java e sofrem de uma diminuição do desempenho em tempo de execução.
No domínio no-code e low-code, a plataforma AppMaster proporciona um desenvolvimento de aplicações rápido e eficiente para aplicações backend, Web e móveis. Isto torna-a uma ferramenta valiosa num mundo em que a melhoria dos tempos de arranque e do desempenho em diferentes sistemas e plataformas é cada vez mais importante. Considere experimentar o AppMaster Studio para um desenvolvimento de aplicações mais rápido e uma integração perfeita com vários sistemas.