Apache Ignite:JVM 暂停时间可能过长:714 毫秒
Apache Ignite: Possible too long JVM pause: 714 milliseconds
我设置了 Apache Ignite 服务器,并将 SpringBoot 应用程序作为 Kubernetes 集群中的客户端。
在性能测试中,我开始注意到在SpringBoot应用程序中频繁出现以下日志:
org.apache.ignite.internal.IgniteKernal: Possible too long JVM pause: 714 milliseconds
根据 this post,这是由于 "JVM is experiencing long garbage collection pauses",但基础架构团队已向我确认我们在服务器 JVM 选项中包含了 +UseG1GC
和 +DisableExplicitGC
而这行日志只在SpringBoot应用中显示。
请帮助解决以下问题:
- GC发生在Client(SpringBoot应用)还是Server节点?
- 长时间的 GC 暂停会产生什么影响?
- 我应该怎么做才能避免影响?
- 我是否也必须在 SpringBoot 应用程序中配置 JVM 选项?
GC发生在Client(SpringBoot应用)还是Server节点?
GC错误将被记录到出现问题的节点的日志中。
长时间的 GC 暂停会产生什么影响?
此类暂停会降低整体性能。此外,如果暂停时间长于 failureDetectionTimeout 节点将从集群断开连接。
我应该怎么做才能避免影响?
此处收集一般建议 - https://apacheignite.readme.io/docs/jvm-and-system-tuning。您还可以启用 GC 日志以全面了解发生的情况。
SpringBoot应用中是否也需要配置JVM选项?
看起来你应该这样做,因为你的客户端节点有问题。
我设置了 Apache Ignite 服务器,并将 SpringBoot 应用程序作为 Kubernetes 集群中的客户端。
在性能测试中,我开始注意到在SpringBoot应用程序中频繁出现以下日志:
org.apache.ignite.internal.IgniteKernal: Possible too long JVM pause: 714 milliseconds
根据 this post,这是由于 "JVM is experiencing long garbage collection pauses",但基础架构团队已向我确认我们在服务器 JVM 选项中包含了 +UseG1GC
和 +DisableExplicitGC
而这行日志只在SpringBoot应用中显示。
请帮助解决以下问题:
- GC发生在Client(SpringBoot应用)还是Server节点?
- 长时间的 GC 暂停会产生什么影响?
- 我应该怎么做才能避免影响?
- 我是否也必须在 SpringBoot 应用程序中配置 JVM 选项?
GC发生在Client(SpringBoot应用)还是Server节点?
GC错误将被记录到出现问题的节点的日志中。
长时间的 GC 暂停会产生什么影响?
此类暂停会降低整体性能。此外,如果暂停时间长于 failureDetectionTimeout 节点将从集群断开连接。
我应该怎么做才能避免影响?
此处收集一般建议 - https://apacheignite.readme.io/docs/jvm-and-system-tuning。您还可以启用 GC 日志以全面了解发生的情况。
SpringBoot应用中是否也需要配置JVM选项?
看起来你应该这样做,因为你的客户端节点有问题。