我正在使用带有NodeJS的HAPI.JS框架并创建了一个代理。认为代理意味着我只是在redis中维护会话。除此之外,我没有在代码中做任何事情。可能是唯一的事情是我使用setInterval来记录我的process.memoryUsage()每3分钟。
我的问题:
P.S我是节点JS的新手。
答案 0 :(得分:5)
- 为什么我的记忆力会继续增加?
醇>
你有内存泄漏
- 会不会下来?
醇>
有时候GC开始并清理一些事情(没有泄漏)
- 是否由于setInterval继续记录进程使用而发生这种情况?
醇>
通常不会,但是没有看到我无法说出的代码
- 是否由于每个请求和响应的控制台记录而发生?
醇>
通常不会,但是没有看到我无法说出的代码
- 我的Redis数据库保持打开状态,直到我的服务器崩溃,这导致了这个?
醇>
应该不是问题。
- 我是否需要使用像新遗物或强力循环一样的过程管理来识别这个?
醇>
这是一种方法......但也有其他方法。
- 那么这段记忆会持续多久,在某些时候它必须停止(我想知道那个点是什么?)
醇>
取决于服务器设置。 RAM多少+正在运行的等等。
- 我使用池化概念使用MSSQL事务的续集?汇集是否会产生这个?
醇>
通常不会,但是没有看到我无法说出的代码
也许这篇文章可以帮助您找到泄漏:
https://www.nearform.com/blog/how-to-self-detect-a-memory-leak-in-node/