【发布时间】:2021-11-12 01:44:57
【问题描述】:
我是 NodeJS 和 Mongo DB 的新手。我在 mongo Collection 中有一个包含 20 万数据 (1.3 GB) 的集合。
我正在使用本地服务器和窗口机器。
我正在使用 NodeJS 和 ReactJS 来执行这个集合的查询。我只有 2 列中的搜索关键字并得到以下错误:
请建议如何解决此问题。
<--- Last few GCs --->
[33332:000001D061D9E0A0] 42563 ms: Mark-sweep (reduce) 2039.7 (2060.1) -> 2039.5 (2061.1) MB, 304.6 / 0.0 ms (average mu = 0.065, current mu = 0.013) allocation failure scavenge might not succeed
[33332:000001D061D9E0A0] 42881 ms: Mark-sweep (reduce) 2040.5 (2058.1) -> 2040.4 (2059.8) MB, 313.2 / 0.0 ms (average mu = 0.040, current mu = 0.015) allocation failure scavenge might not succeed
<--- JS stacktrace --->
FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
1: 00007FF6CFDC481F napi_wrap+110783
2: 00007FF6CFD67F26 v8::base::CPU::has_sse+61862
3: 00007FF6CFD68E26 node::OnFatalError+294
4: 00007FF6D06423BE v8::Isolate::ReportExternalAllocationLimitReached+94
5: 00007FF6D062718D v8::SharedArrayBuffer::Externalize+781
6: 00007FF6D04D02CC v8::internal::Heap::EphemeronKeyWriteBarrierFromCode+1516
7: 00007FF6D04DB6EA v8::internal::Heap::ProtectUnprotectedMemoryChunks+1258
8: 00007FF6D04D8829 v8::internal::Heap::PageFlagsAreConsistent+2457
9: 00007FF6D04CD3D1 v8::internal::Heap::CollectGarbage+2049
10: 00007FF6D04CB5D5 v8::internal::Heap::AllocateExternalBackingStore+1349
11: 00007FF6D04E5455 v8::internal::GCIdleTimeHandler::ShouldDoContextDisposalMarkCompact+1029
12: 00007FF6D04E58A5 v8::internal::Factory::AllocateRaw+37
13: 00007FF6D04F93E6 v8::internal::FactoryBase<v8::internal::Factory>::NewFixedArrayWithFiller+86
14: 00007FF6D04F96F3 v8::internal::FactoryBase<v8::internal::Factory>::NewFixedArrayWithMap+35
15: 00007FF6D0306AE0 v8::internal::HashTable<v8::internal::NameDictionary,v8::internal::NameDictionaryShape>::EnsureCapacity<v8::internal::Isolate>+208
16: 00007FF6D0304156 v8::internal::Dictionary<v8::internal::NameDictionary,v8::internal::NameDictionaryShape>::Add<v8::internal::Isolate>+102
17: 00007FF6D030D416 v8::internal::BaseNameDictionary<v8::internal::NameDictionary,v8::internal::NameDictionaryShape>::Add+118
18: 00007FF6D020178C v8::internal::Runtime::GetObjectProperty+2204
19: 00007FF6D06CB27D v8::internal::SetupIsolateDelegate::SetupHeap+465325
20: 000001E7C8B837B6
【问题讨论】:
-
增加你的机器\虚拟机\服务器上的内存。
-
我使用的是本地机器。我的机器是窗口。那么下一部分是什么?
-
你能显示相关代码吗?
-
增加分配给Node的内存
-
我得到了一个解决方案.... node --max-old-space-size=8192 index.js 但这不起作用