【发布时间】:2015-04-17 07:27:36
【问题描述】:
我在 NodeJS 中使用 HAPI.JS 框架并创建了一个代理。认为代理意味着我只是在 redis 中维护会话。除此之外,我没有在代码中做任何事情。可能唯一的事情是我每 3 分钟使用 setInterval 记录我的 process.memoryUsage()。
我的问题:
- 为什么我的记忆力不断增加?
- 会掉下来吗?
- 这是因为 setInterval 一直在记录进程使用情况吗?
- 这是因为控制台记录了每个请求和响应吗?
- 我的 Redis 数据库一直保持打开状态,直到我的服务器崩溃,这会导致这种情况吗?
- 我是否需要使用流程管理器(如 new relic 或 strong loop)来识别这一点?
- 那么这段记忆会持续增加多久,在某些时候它必须停止(我想知道那是哪一点?)
- 我正在使用池概念使用 MSSQL 事务的 sequelize?池化能做到这一点吗?
PS 我是节点 JS 的新手。
【问题讨论】:
-
你能展示你的代码吗?听起来好像不是那么多。
-
@pkyeck 对不起,伙计。无法显示我的代码。这是我的实现,路由列表,每个路由调用另一个服务器并将响应提供给客户端。我正在使用请求模块来调用另一台服务器。我所有的路由都受到基于令牌的身份验证的保护。
-
您的应用程序正在泄漏内存,但没有看到源代码,无法说出原因。您可以尝试按照以下步骤查找泄漏:github.com/felixge/node-memory-leak-tutorial
-
@pkyeck 你能告诉我从上述问题列表中发生的事情吗?
标签: javascript node.js