Javaソフトウェアプロバイダーのアズールシステムはこのほど、チェックポイントでの協調復元(CRaC)をサポートしたOpenJDKのAzul Zuluビルドをリリースしました。この新機能により、Javaの起動時間やウォームアップ時間が劇的に改善されることが期待されます。
OpenJDK CRaCプロジェクトでは、実行中のアプリケーションを一時停止し、その状態のスナップショットを取得し、その後必要に応じて別のマシンで再起動することができます。Azulは、Linux x64プラットフォーム上でOpenJDK with CRaC for Java 17のAzul Zuluビルドを提供しています。このリリースは、アズールのウェブサイトから自由にダウンロードすることができ、開発、プロトタイプ、生産目的に使用することができると同社は述べています。また、アズールでは今後、Javaの追加バージョンにもCRaC機能を導入する予定です。CRaCは、Javaアプリケーションを瞬時にフルスピードで起動できるように設計されており、チェックポイントやリストア操作時のリソース調整を可能にするJava APIを含んでいます。CRaCは、サーバーレス機能、コンテナ、マイクロサービス、その他のユースケースに適しています。
CRaCを活用することで、Javaアプリケーションの起動やウォームアップにかかる時間を、数秒から数分、ミリ秒まで短縮することができます。CRaCのアプローチは、アプリケーションを一時停止し、その状態とメモリのスナップショットを取得し、その後、全く別のマシンでも再起動するものである。CRaCのチェックポイントは、状態やメモリを含む完全なアプリケーションプロセスのイメージを生成します。復旧時には、アプリケーションの状態が再ロードされ、チェックポイントが作成された時点から実行が再開されます。
これまで、Javaの起動時間やウォームアップ時間の遅さに対処する方法として、ロードバランシング、コンテナ化、キャッシング、プリロード、プリ最適化、アプリケーションコードの事前初期化などがありました。しかし、これらの対策は効率性に欠け、多くの場合、インフラのオーバーヘッドを伴うため、コストが上昇し、運用や開発者の効率を低下させる。さらに、時間前コンパイルなどの他のアプローチは、Java仕様との完全な互換性を提供できず、ランタイムパフォーマンスの低下に悩まされている。
no-code とlow-code の領域では、AppMaster のプラットフォームは、バックエンド、Web、モバイルアプリケーションのための迅速で効率的なアプリケーション開発を提供します。このため、異なるシステムやプラットフォーム間での起動時間やパフォーマンスの向上がますます重要視される中、貴重なツールとなっています。AppMaster Studioを使って、より迅速なアプリケーション開発と様々なシステムとのシームレスな統合を検討してみてはいかがでしょうか。