IT外包网管小贴士,如何分析节点中的内存泄漏?

发布者:上海IT外包来源:http://www.lanmon.net点击数:498

      蓝盟IT小贴士,来喽!
  还有其他可能导致内存泄漏的情况,例如缓存。使用缓存时,需要知道缓存对象的数量。如果有许多缓存对象,就有必要限制缓存对象的最大数量。还有一个非常占用中央处理器的代码,也可能导致内存泄漏。当服务器运行时,如果有高的中央处理器同步代码,因为Node.js是单线程的,它不能处理处理请求,并且请求的累积导致过多的内存占用。
  通常有两种情况可以定位内存泄漏:
  对于只要正常使用就可以重现的内存泄漏,这是一个非常简单的情况,只要模拟测试环境就可以检查。
  对于意外的内存泄漏,通常与特殊输入有关。稳定地再现该输入是一个耗时的过程。如果无法通过代码日志找到此特殊输入,建议在生产环境中打印内存快照。应该注意的是,打印内存快照是一项占用大量CPU的操作,可能会影响在线业务。
  建议打印3个内存快照、一个内存泄漏前的内存快照、一个测试后的内存快照和一个测试后的内存快照。
  第一个内存快照用于比较测试后哪些对象会增长。如果内存泄漏不明显,可以在大量测试后将其与内存快照进行比较,以便更容易定位。
IT外包
>
400-635-8089
立即
咨询
电话咨询
服务热线
400-635-8089
微信咨询
微信咨询
微信咨询
公众号
公众号
公众号
返回顶部