AOT 快取
AOT 快取是 JVM 特性,有助於減少 Java 應用程式的啟動時間和記憶體佔用。
如果您使用 Java < 24,則應閱讀有關 CDS 的章節。CDS 是 AOT 快取的 предше者,但工作方式類似。
Spring Boot 同時支援 CDS 和 AOT 快取。如果您的 JVM 版本(Java 24 或更高版本)支援 AOT 快取,建議您使用 AOT 快取。
AOT 快取
| 如果您使用 Java < 24,AOT 快取不可用。您必須改用 CDS。 |
要使用 AOT 快取功能,您應首先在提取形式的應用程式上執行一次訓練執行。
$ java -Djarmode=tools -jar my-app.jar extract --destination application
$ cd application
$ java -XX:AOTCacheOutput=app.aot -Dspring.context.exit=onRefresh -jar my-app.jar
這將建立一個 `app.aot` 快取檔案,只要應用程式未更新且使用相同的 Java 版本,該檔案就可以重複使用。
要使用快取檔案,您需要在啟動應用程式時新增一個額外引數。
$ java -XX:AOTCache=app.aot -jar my-app.jar
| 您必須將快取檔案與提取形式的應用程式一起使用,否則它將不起作用。 |
CDS
| 如果您使用 Java 24 或更高版本,請改用 AOT 快取而不是 CDS。 |
要使用 CDS,您應首先在提取形式的應用程式上執行一次訓練執行。
$ java -Djarmode=tools -jar my-app.jar extract --destination application
$ cd application
$ java -XX:ArchiveClassesAtExit=application.jsa -Dspring.context.exit=onRefresh -jar my-app.jar
這將建立一個 `application.jsa` 存檔檔案,只要應用程式未更新,該檔案就可以重複使用。
要使用存檔檔案,您需要在啟動應用程式時新增一個額外引數。
$ java -XX:SharedArchiveFile=application.jsa -jar my-app.jar
| 您必須將快取檔案與提取形式的應用程式一起使用,否則它將不起作用。 |
| 有關 CDS 的更多詳細資訊,請參閱 JDK 的類資料共享文件。 |