gpt4 book ai didi

java - JVM 的内存占用量是多少,如何将其最小化?

转载 作者:IT王子 更新时间:2023-10-28 23:33:59 25 4
gpt4 key购买 nike

我只是想知道当 JavaVM(Sun、Linux)开始产生多个 JVM 进程时实际占用的空间是多少。当我记得很清楚时,那些应该分享 rt.jar (也许更远?)。这些 JVM 是否共享 JIT 缓存(所有 JVM 具有相同的 Classpath)?

有什么办法可以减少多实例 JVM 的开销吗? (除了为堆设置更小的限制)?

在编写应用程序时我可以做些什么?

我可以共享内存区域吗?也许共享映射的内存块?

最佳答案

This post描述了构成 Java 应用程序足迹的内容。也就是说,如果你想减少占用空间,你需要减少那些部分:Java Heap、Metaspace、Code Cache、直接缓冲区、线程数等。

HotSpot JVM 的实例不会相互通信以共享数据。基本上它们除了操作系统共享的东西之外什么都不共享,即动态库 (.so) 和只读内存映射文件 (.jars)。

由应用程序通过 IPC 机制提供进一步的共享,例如内存映射文件。

关于java - JVM 的内存占用量是多少,如何将其最小化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38552250/

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