这可能是一个新手问题,但我搜索并找不到令人满意的答案。
我的 node.js 应用程序似乎消耗了大量内存。每个进程消耗大约 100MB。我听说 nodejs 本身每个进程的内存占用约为 30MB。
该应用程序是一个 JSON api,由 MongoDB 支持。在某些情况下,一个 API 请求会导致许多数据库请求,主要是填充子关系。一个典型的查询是这样的:(1)根据查询条件获取一个objectIds数组,(2)迭代每个objectId,并向数据库发出查询以填充数据(有人称之为水合)。
该代码大量使用 async.js。我试图分析内存使用情况,似乎 async.js 正在使用大量内存,但没有内存泄漏的迹象。async.js 的作者还提出了一个流库 highland.js ( http://highlandjs.org/ )。我是 nodejs 流的新手,我很好奇这是否是替代 async.js 的可能工具?该网站似乎提到underscore
但我主要async.js
用于异步处理。
谢谢!