我正在使用https://www.npmjs.com/package/memory-usage通过在 MACOS 终端中运行“memory-usage app.js”来查看我的 Node 应用程序如何使用内存。然而,经过一些测试,它总是在 1.4GB 时崩溃。
在普通的nodejs命令中,要将内存限制设置得更高,我可以使用“node --max-old-space-size=8192 app.js”。但是,运行“memory-usage --max-old-space-size=8192 app.js”将不起作用。
我的 Mac 有以下 RAM 详细信息:
组 0/DIMM0:
大小:4 GB 类型:DDR3 速度:1867 MHz
组 1/DIMM0:
大小:4 GB 类型:DDR3 速度:1867 MHz
我的 Nodejs 应用程序可以使用的最大大小是多少?如何通过内存使用来设置它?
谢谢。
我正在使用headless-gl在Node.js上运行webGL,在服务器上动态创建一个图像.一旦创建,在用户通过API再次访问图像之前,图像将存储在数据库(MongoDB)中.
下面是生成图像的部分:
var pixels = new Uint8Array(width * height * 4)
gl.readPixels(0, 0, width, height, gl.RGBA, gl.UNSIGNED_BYTE, pixels)
Run Code Online (Sandbox Code Playgroud)
然后将像素转换为base64(因为这似乎是客户端HTML中Image加载的推荐方式).
var base64Image = new Buffer(pixels, 'binary').toString('base64');
Run Code Online (Sandbox Code Playgroud)
但是,此缓冲区生成的字符串无法解码以生成图像.可能是像素不是'二进制'类型?或者我应该将像素字符串保存在数据库中并尝试在客户端中逐个像素地重绘画布中的像素(我不认为这是最好的方法)?