我们有一台在生产中运行的NodeJS / Express服务器,偶尔会阻止所有请求。正在接收Web请求,但未处理(并且它们最终都会超时)。几分钟后,它会再次开始接受请求,但之后几乎立即开始阻止。
我们一直试图在本地重现这个问题,但无法重现并确定原因是什么。我的猜测是,事件循环被同步操作阻止,这种操作需要很长时间才能完成或根本无法完成。
有没有办法调试实时生产系统并找出造成阻塞的原因?我搜索过,但只能找到当地发展的解决方案。是我回顾日志的最佳解决方案,看看最后一个没有阻止完成的请求(在它开始阻塞之前),并调试它?
使用Node 6.2.2,Express 4.13.4,并在Heroku上运行。