【问题标题】:heap memory allocation and performance堆内存分配和性能
【发布时间】:2012-12-27 13:59:29
【问题描述】:

应用程序在具有 16 GB RAM 和 100 GB 硬盘的高端 Linux 服务器中运行。我们有以下命令来运行程序。

nohup java -server -Xmn512m -Xms1024m -Xmx1024m -Xss256k -verbose:gc -Xloggc:/logs/gc_log.txt MyClass >> /output.txt

这是由其他人写的,我试图理解为什么使用 -verbose:gc -Xloggc:。 当我检查此命令时,它会收集 gc 日志,但 这会导致应用程序出现性能问题吗? 此外,我想重新查看我的内存参数,该应用程序使用完整的 16 GB RAM,CPU 利用率低于 5%。我们正在分析内存使用的原因。 但是我们是否可以增加内存参数值以获得更好的性能或现有的就足够了?

【问题讨论】:

    标签: java performance memory-management server-administration


    【解决方案1】:

    您问题的第一部分的答案是 -verbose:gc 意味着更多的 GC 日志将附加到 -Xloggc 中提供的文件中。如果 CPU 使用率

    对于第二部分,如果您分配 1024m 的堆并且应用程序仍然占用 16GB RAM,这是不可能的。

    【讨论】:

    • 也许占用 16GB 的不是 Java 本身?如果 OP 正在使用 SQLite、MongoDB 或其他一些占用内存的数据存储,这可以解释他所观察到的情况。
    猜你喜欢
    • 1970-01-01
    • 2019-05-17
    • 2011-10-09
    • 2021-11-18
    • 1970-01-01
    • 2017-01-04
    • 2012-12-05
    • 2012-09-16
    • 2011-05-28
    相关资源
    最近更新 更多