多协议、性能稳定、丰富API的流媒体服务器软件
如何获得Java Heap dump数据?
用JConsole获得Java heap dump 数据
  1. 使用JConsole/JMX 连接到正在运行Wowza Media Server
  2. 选择MBeans tab
  3. 选择com.sun.management/HotSpotDiagnostics 对象的Operation
  4. dumpHeap参数中输入下面的信息,然后点击dumpHeap按钮:
    p0: [heap-output-path]
    p1: true - do a garbage collection before dump heap
    
    for example:
    p0: c:/dump.dmp
    p1: true
    			


使用JHat命令获得Java heap dump 数据

  1. 打开命令行窗口,进入JDK的安装目录
  2. 使用操作系统提供的工具(例如Linux服务器上的 ps -ef 或者Windows上的任务管理器)找到运行Wowza Streaming Engine的Java进程ID。
  3. 执行以下命令:
    jmap -dump:format=b,file=c:\Temp\mymemorydump.hprof [pid]
    			

其中 [pid] 是Wowza服务进程的ID。

在下一次抛出OutOfMemory错误的时候自动输出Java heap dump 数据

你也可以配置Java,让它在抛出OutOfMemory错误时输出Java heap dump。 若要这么做,请编辑[install-dir]/bin/setenv.sh (或Windows服务器上的[install-dir]/bin/setenv.bat 或 [install-dir]/bin/WowzaMediaServer-Service.conf),添加以下到JAVA_OPTS:

-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=[path-to-heapdump]
	
其中,[path-to-heapdump] 是Java heap dump 文件保存的路径(例如 /opt)。www.ttstream.com

这里还有关于这一点的一些更详细的介绍:
http://stackoverflow.com/questions/5...dump-for-jboss

获得Java Heap dump文件后,将它上传到某个地方,让Wowza的技术支持团队可以下载下来帮你分析。

在生成Java Heap dump文件前强制垃圾回收,请先执行以下命令:
jcmd [pid] GC.run