在用nestjs开发node服务的过程中,使用generic-pool创建puppeteer连接池,并发测试时发现控制台有警告信息,如下:

(node:30460) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 SIGINT listeners added to [process]. Use emitter.setMaxListeners() to increase limit
该信息告诉我们监听事件超出了阈值,可能会导致内存泄漏,让我们调用emitter.setMaxListeners()来提高阈值

该信息提示过于简单,我们无法定位问题,这时我们可以先通过添加如下代码来输出执行栈的信息:

process.on('warning', e => console.warn(e.stack))

再次启动服务,可以看到执行栈的信息:

源头出现在events.js中,node中,默认情况下,如果为一个特定事件添加了超过10个监听器,EventEmitter将打印一个警告。这是一个有用的默认值,有助于发现内存泄漏。emitter.setMaxListeners()方法允许针对这个特定的EventEmitter实例修改这个限制。该值可以设置为Infinity(或0),以表示无限数量的侦听器。(官方说明:emitter.setMaxListeners(n))

实际情况下,并发超过10很正常,我们可以通过如下设置来移除警告:

// 不限制监听数量process.setMaxListeners(0)

MaxListenersExceededWarning: Possible EventEmitter memory leak detected.警告的处理相关推荐

  1. uniapp MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 upgrade listeners

    uniapp 出现这个红色提示语 (node:39268) MaxListenersExceededWarning: Possible EventEmitter memory leak detecte ...

  2. 一次bug调试经验----To prevent a memory leak, the JDBC Driver has been forcibly unregistered.

    5-Feb-2019 11:03:11.635 严重 [RMI TCP Connection(2)-127.0.0.1] org.apache.catalina.core.StandardContex ...

  3. MFCButton Memory leak(内存泄露问题)

    MFCButton Memory leak(内存泄露问题) http://m.blog.csdn.net/blog/haoekin/8851219 1.无法显示右边箭头的问题 无论怎么折腾都没显示不出 ...

  4. This is very likely to create a memory leak. Stack trace of thread

    1.错误描述 警告: The web application [cmp] appears to have started a thread named [Abandoned connection cl ...

  5. Threads are going to be renewed over time to try and avoid a probable memory leak.

    记录一次内存泄漏问题的解决 问题现象:启动tomcat后,过几个小时,线上的工程就会停止运行了,日志里面就会报下面这样的错误 13-Aug-2019 12:51:27.248 SEVERE [loca ...

  6. Android 内存管理 amp;Memory Leak amp; OOM 分析

    1.Android 流程管理&内存 Android主要应用在嵌入式设备其中.而嵌入式设备因为一些众所周知的条件限制,通常都不会有非常高的配置,特别是内存是比較有限的. 假设我们编写的代 码其中 ...

  7. LeakDiag 微软一款检测memory leak的工具

    LeakDiag是微软一款检测memory leak的工具,使用比较简单 首先去下载一个 ftp://ftp.microsoft.com/PSS/Tools/Developer%20Support%2 ...

  8. 《memory leak: stackwalk》

    <memory leak: stackwalk> /// // // StackWalk.cpp // // Author: Oleg Starodumov // // NOTE: THI ...

  9. mysql memory leak_解决memory leak问题

    应用程序注册了JDBC驱动,但当程序停止时无法注销这个驱动,tomcat为了防止内存溢出,就给强制注销了 解决: 重写了org.apache.commons.dbcp.BasicDataSource  ...

  10. This is very likely to create a memory leak.

    前言 tomcat 7.0.78 java 1.8.0_161 现象 tomcat启动过程中出现如下报错: The web application [/xx/xxx] appears to have ...

最新文章

  1. 实例分割的进阶三级跳:从 Mask R-CNN 到 Hybrid Task Cascade
  2. vue+axios方法封装(restful,ajax)
  3. c语言打开pdf失败,c语言错误种类总结.pdf
  4. 海外仓储系统有哪些功能?
  5. 谷歌翻译器-谷歌翻译器软件批量自动翻译
  6. 计算机网络谢希仁第七版课后答案完整版
  7. 简单书籍类网页代码制作
  8. 忘记网站服务器密码怎么办,忘记远程服务器的密码怎么办
  9. VMware提示“指定的文件不是虚拟磁盘“或“The file specified is not a virtual disk”打不开
  10. c语言 链表怎么调用,求教!!!链表,函数调用高手进!!!
  11. 如何测量多个变量之间的非线性关系
  12. 互联网社交出海:赤子城年内涨幅280%,“深水区”故事如何说好?
  13. PHP笔记——开发工具VS Code
  14. 还在学Django! FastAPI Web 框架教程来了!
  15. C++之定义动态二维数组
  16. 51单片机三线串行驱动12864液晶
  17. 『注册中心』Consul微服务注册中心的使用及相关集群搭建
  18. 【红队攻防】Attack矩阵图
  19. codeforces 940E. Cashback(线性dp)
  20. Python入门 —— 03GUI界面编程

热门文章

  1. 基于GITHUB ACTION的定时任务,真香!
  2. 向量长度、夹角与向量正交
  3. FAQ:sorry,too many clients already
  4. 多传感器数据融合简介(转)
  5. TSE2019-The Art, Science, and Engineering of Fuzzing: A Survey
  6. 1小时学会通过Java Swing Design设计java图形化
  7. android wear刷机,1分钟搞定刷机 百度DuWear手表系统公测版上线
  8. linux regulator接口驱动demo
  9. ddl是什么意思网络语_ddl是什么
  10. 8.(高级)CSS形状之:菱形图片