动态内存泄露侦测

欢迎使用Apptalking,本文档将帮助您快速理解产品的核心功能,如果在使用过程当中遇到了问题,欢迎通过邮件的方式进行问答。

动态内存泄露侦测

Apptalking 有多种的内存泄露侦测的方式,可以做到动态的内存泄露侦测。运维在进行内存泄露检查的时候,一般使用JMAP 命令 dump JVM Heap内存进行分析,这样的方式是通过分析静态文件得到结果,分析的数据只能到类的粒度,JVM Heap内存一般都是十分巨大的,在生产环境中操作起来并不方便。

Apptalking 动态内存泄露侦测直接在生产环境中监控对象实例,可以知道某个实例的大小,并且可以获得调用这个对象实例堆栈信息,可以得知那些操作导致的内存泄露,还可以关联事物,可以得知应用是在处理那个事物的时候导致的内存泄露。Apptalking 内存泄露监控可以直接在生产环境使用,十分便捷。

可疑对象列表

Apptalking 默认关闭动态内存泄露侦测功能,在需要时可以开启,Apptalking 默认监控JDK 集合类和常用Framework的集合类,如果是自定义的集合类需要配置相应的类名进行监控,如果一个集合类的存活时间和元素数量达到阈值,Apptalking会把此集合类实例呈现在列表当中,Apptalking会根据集合类的元素增长速率判断此集合类是否存在内存泄露的嫌疑。
Apptalking

集合类元素数量

Apptalking会即时的监控集合类实例元素数量,可以分析此集合类的元素数量变化情况
Apptalking

集合类内容 Dump

Apptalking可以 Dump 一个集合类的实例的内容信息,粒度到实例级别,分析问题更加的精准。
Apptalking

集合类调用追踪

Apptalking 可以追踪监控的集合类实例调用信息,有详细的堆栈信息,并且可以关联到相应的事物,可以得知那些代码调用导致的内存泄露和那些事物导致的内存泄露。
Apptalking