【发布时间】:2017-12-13 20:54:00
【问题描述】:
我有一个 70 MB 的 JSON 文件,我从 Node.js 脚本中读取并分配给一个变量。
console.log(process.memoryUsage());
let data=require('../newJSON.json');
console.log(process.memoryUsage());
输出:
{ rss: 28184576,
heapTotal: 6283264,
heapUsed: 4199672,
external: 8252 }
{ rss: 724721664,
heapTotal: 695595008,
heapUsed: 663708016,
external: 8252 }
似乎 70 MB JSON 需要 632 MB 内存。我有兴趣了解 Node Js/Javascript 如何将 JSON 存储到内存中?
【问题讨论】:
-
我也很好奇!如果您将 JSON 保存为
.js文件,其中唯一的内容是module.exports = <json>,那么它甚至会占用大约 2 倍的内存! -
是的!对我来说
module.exports导致了 FatalProcessOutOfMemory 问题。 -
它是什么样的 JSON,结构和平均元素大小是多少?
-
在我的例子中,它是一个带有 5 个子级别的嵌套 JSON。
-
例如:
{"8 char": {''6 char": {"1 char": { "8 char": {"1 char":<0 or 1> ,"1 char":<0 or 1>} } } } }。 (8 char: 平均 8 个字符)
标签: javascript json node.js memory-management v8