小编zhe*_*gyu的帖子

可以创建堆转储来分析内存泄漏而不进行垃圾回收吗?

我们在生产中运行Java应用程序的虚拟机上存在一些内存泄漏问题,旧的Gen堆使用量每天都在快速增长,所以我想创建堆转储来分析它.

但是,我注意到VisualVM将在堆转储之前执行完整的GC,这将清除旧的Gen,在这种情况下,堆转储将是无用的.

我还尝试使用以下命令:

jmap -dump:live,format = b,file = heap.bin

它还将触发完整的GC.

请问是否有一种方法可以在没有完整GC(或没有GC)的情况下创建堆转储?或者有没有更好的方法来分析内存泄漏?

JDK版本:1.7.0_45

谢谢.

java garbage-collection memory-leaks

11
推荐指数
3
解决办法
1万
查看次数

线程数,加速周期,循环计数,jmeter中的调度程序持续时间

我是Jmeter的新手并且对这4个设置感到困惑:

  • 线程数,
  • 加速期,
  • 循环计数,
  • 调度程序中的持续时间

    Thread Group 1: # of threads:1, ramp up period:0, loop count:5, no scheduler
    Thread Group 2: # of threads:5, ramp up period:0, loop count:1, no scheduler
    Thread Group 3: # of threads:1, ramp up period:1s, loop count:5, no scheduler
    Thread Group 4: # of threads:5, ramp up period:5s, loop count:1, no scheduler
    Thread Group 5: # of threads:1, ramp up period:1s, loop count:forever, duration in scheduler:5s
    Thread Group 6: # of threads:5, ramp up period:5s, …
    Run Code Online (Sandbox Code Playgroud)

jmeter

9
推荐指数
2
解决办法
1万
查看次数

老一代的内存使用量的增长总是意味着Java中的内存泄漏?

我们有几个在生产环境中运行数据服务的VM,客户端向数据服务发送Restful HTTP请求,负载比较重(通常每主机每秒500个请求),并且每个VM上的负载始终保持平衡。我们在所有主机上都具有相同的配置(2个CPU,-Xms2048m -Xmx4096m -XX:MaxPermSize = 192m -XX:NewSize = 512m -XX:MaxNewSize = 512M -XX:+ UseConcMarkSweepGC -XX:+ CMSClassUnloadingEnabled -XX:+ HeapDumpOnOutOfMemoryError)

两天前,我们看到其中5台VM的旧发电堆使用量开始增长(每天300 MB),其他VM上的旧发电堆使用量保持不变(大约80 MB),我们正在尝试找出根本原因,可能是我问这是内存泄漏问题还是正常情况?老一代的内存使用率增长是否总是意味着Java中的内存泄漏?

谢谢。

更新:我们昨天刚刚重新启动了这5台主机,所有主机上的旧发电堆使用率都与其他主机恢复正常,但是,在今天早晨出现高峰负载之后,其中一台的旧发电堆使用率又开始增长。 ..

java memory-leaks

4
推荐指数
1
解决办法
2万
查看次数

标签 统计

java ×2

memory-leaks ×2

garbage-collection ×1

jmeter ×1