NodeJS内存高峰导致堆内存不足

时间:2019-01-02 18:04:43

标签: javascript node.js debugging

我正在对可能导致我的应用因JavaScript堆内存不足而死亡的潜在问题进行测试。我试图缩小堆大小以重现类似的问题。

我将max-old-space-size设置为5mb并在Chrome上进行了检查:

node --inspect --max-old-space-size=5 app.js

以下是我的app.js代码,用于增加内存使用量:

const express = require('express')
const app = express()
let port = process.env.SERVER_PORT || 3333
var test = []

setInterval(() => {
    test.push(
        process.memoryUsage()
    )
}, 1)
app.listen(port, () => {
    console.log('Server is started on ' + port + ' with pid ' + process.pid)
})

...试图向服务发送垃圾邮件并记录更改。

以下图像是chrome发出的第一个内存快照警告的结果。

这是跨服务的通用数据:

这显示了Chrome调试器抛出内存警告之前的峰值:

这证明了峰值包含app.js生成的整个数组以及所有系统文件:

在了解为什么构造函数突然出现,导致堆内存问题并终止服务的过程中,我需要帮助。

0 个答案:

没有答案