Javascript 对象最大内存大小

Javascript object maxium memory size

目前我正在通过 Javascript 进行简单的数据库迁移。我发现自己想要跟踪一些简单的 id -> 对象映射以减少 SQL 数据库调用。

那么问题来了,节点中一个javascript对象的最大大小是多少? 假设我有一个非常简单的 table,有 2000 条记录。我只对两列感兴趣,我是否可以将所有这些值存储在一个看起来像 {id1: {col1: "foo", col2: "bar"}, id2: 的普通 JS 对象下{col1: "ss", col2: "bb"}} ??

如果 2000 可以,我最多可以做多少?

根据 V8 上的这个问题。 Chrome 内存中最多可支持 2GB 的对象。

https://bugs.chromium.org/p/v8/issues/detail?id=847

没问题

在我的应用中,我只是将一些日志存储在一个数组实例中,并将长度限制设置为 10000;

var maxListLength = 100000; 这使得Array实例大小达到50MB左右;

而当应用程序是运行时,这种实例可能有100个,但没有问题;

你应该做的是在 V8 中增加 Node 进程的内存限制:

node --max-old-space-size=4096 your_app.js