App Engine 上的 Java 11 应用程序的推荐 JVM 参数是什么?

Dev*_*cer 3 java google-app-engine java-11

多个来源展示了如何在 app.yaml entryPoint 命令中设置 JVM 参数(例如 -Xmx):

https://cloud.google.com/appengine/docs/standard/java11/building-app/writing-web-service https://github.com/GoogleCloudPlatform/java-docs-samples/blob/master/appengine-java11 /kotlin-ktor/app.yaml

但是,我没有看到任何有关推荐设置或是否需要良好性能的文档。如果我们不指定内存值,会使用什么设置?内存设置是否会随着机器类型的变化而自动调整?

Ste*_*n C 5

没有通用的“推荐”参数/设置。对一个应用程序或用例可能有利的设置可能对另一个应用程序或用例来说很糟糕。

作为一般规则,根本没有 JVM 设置是一个很好的起点。然后观察、测量、调整、重复,直到性能可以接受。(或者别打扰。)

如果我们不指定内存值,会使用什么设置?内存设置是否会随着机器类型的变化而自动调整?

默认堆大小值取决于 Java 版本和平台。对于最新的 Oracle / OpenJDK 版本,默认最大堆大小是物理 RAM 的 1/4,默认初始堆大小是物理 RAM 的 1/64;看

您还可以使用该-XX:+PrintFlagsFinal选项打印所有 JVM 设置的值。