Поставщик программного обеспечения Java компания Azul Systems недавно выпустила сборку OpenJDK Azul Zulu с поддержкой координированного восстановления в контрольной точке (CRaC). Ожидается, что эта новая функциональность значительно улучшит время запуска и разогрева Java.
Проект OpenJDK CRaC позволяет запущенному приложению приостанавливаться, делать снимок своего состояния и впоследствии перезапускаться на другой машине, если это необходимо. Azul предлагает Azul Zulu сборку OpenJDK с CRaC для Java 17 на платформах Linux x64. Релиз свободно доступен для загрузки на сайте Azul и может быть использован для разработки, создания прототипов и производства, сообщает компания. Azul также планирует в будущем представить возможности CRaC для других версий Java. CRaC, разработанный для обеспечения мгновенного запуска Java-приложений на полной скорости, включает Java API, который позволяет координировать ресурсы во время операций контрольной точки и восстановления. CRaC хорошо подходит для бессерверных функций, контейнеров, микросервисов и других сценариев использования.
Благодаря использованию CRaC время запуска и разогрева Java-приложений теперь можно сократить с секунд или минут до миллисекунд. Подход CRaC предполагает приостановку приложения, получение снимка его состояния и памяти и последующий перезапуск, даже на совершенно другой машине. Контрольная точка CRaC создает образ полного процесса приложения, включая состояние и память. При восстановлении состояние приложения перезагружается, и выполнение возобновляется с того места, где была первоначально создана контрольная точка.
Ранее методы решения проблемы медленного запуска и разогрева Java включали балансировку нагрузки, контейнеризацию, кэширование, предварительную загрузку, предварительную оптимизацию и предварительную инициализацию кода приложения. Однако эти меры недостаточно эффективны и часто связаны со значительными инфраструктурными накладными расходами, что повышает стоимость и снижает эффективность работы и разработчиков. Более того, другие подходы, такие как опережающая компиляция, не обеспечивают полной совместимости со спецификацией Java и страдают от снижения производительности во время выполнения.
В сфере no-code и low-code платформа AppMaster обеспечивает быструю и эффективную разработку приложений для бэкенда, веб и мобильных приложений. Это делает ее ценным инструментом в мире, где все большее значение приобретает улучшение времени запуска и производительности в различных системах и платформах. Попробуйте AppMaster Studio для более быстрой разработки приложений и бесшовной интеграции с различными системами.