gpt4 book ai didi

java - Docker 和 DC/OS 的 JVM 优化

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:34:26 25 4
gpt4 key购买 nike

我正在将裸机 java 应用程序 (jar jdk8) 移动到 docker 容器和 DC/OS。我注意到 docker 上有一个奇怪的模式,我们将 -XMX 设置为 32 gig 并分配了一个 36 gig docker 容器。每隔几个小时左右,应用程序就会在老一代内存分配中出现峰值,并且 GC 会在尝试进行堆转储时陷入循环(最大 CPU)。

是否有任何优化或我可以使用的东西来了解为什么在 1-5 秒的时间间隔内我们的峰值如此之快?在使用 Docker 和 JVM 时,是否有任何我可能需要注意的问题?

我们正在使用默认 GC

最佳答案

仅供将来引用:

我们正在使用 JDK 8,似乎 Oracle 最近刚刚添加了一些使用 Docker 的实验性标志。我相信这种情况可能是在 GC 分配线程时它没有考虑来自 cgroup 的 docker 线程数。实验性标志似乎解决了我们的“脱轨问题”

https://blogs.oracle.com/java-platform-group/java-se-support-for-docker-cpu-and-memory-limits

关于java - Docker 和 DC/OS 的 JVM 优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46015451/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com