我正在尝试增加Nestjs应用程序中的内存堆。我已经尝试按照this stack thread将我的开始脚本更新为“node dist/main --max-old-space-size=16384”。然而,当我测试我的heapTotal时,它没有改变。我做错了什么吗?
我已经尝试在我的应用程序中测试memoryUsage()(来自node:process),以及直接从我的终端的v8引擎中测试。运行我的应用程序之前(使用--max-old-space-size=16384)和之后的值保持不变。
我正在尝试增加Nestjs应用程序中的内存堆。我已经尝试按照this stack thread将我的开始脚本更新为“node dist/main --max-old-space-size=16384”。然而,当我测试我的heapTotal时,它没有改变。我做错了什么吗?
我已经尝试在我的应用程序中测试memoryUsage()(来自node:process),以及直接从我的终端的v8引擎中测试。运行我的应用程序之前(使用--max-old-space-size=16384)和之后的值保持不变。
1条答案
按热度按时间wqlqzqxt1#
“--max-old-space-size”标志用于设置Node.js进程的最大堆大小。但是,它不会直接影响Node.js运行时报告的heapTotal值。
heapTotal值表示堆的当前大小(以字节为单位),它可以根据应用程序的内存需求动态增加或减少
如果您观察到在增加最大堆大小后heapTotal值保持不变,这可能是因为您的应用程序尚未使用额外的内存。
观察heapTotal值随时间的变化,看看它是否随着应用程序需要更多内存而增加。heapTotal值可能会随着垃圾收集器执行其内存管理任务而波动
Node.js运行时和垃圾收集器旨在优化内存使用,并根据应用程序的需求自动管理堆大小。heapTotal值在运行时发生变化是正常的,即使您设置了最大堆大小。