4 回答

TA貢獻1821條經驗 獲得超6個贊
如果您查看源代碼github / v8,似乎您嘗試保留一個非常大的對象。根據我的經驗,如果您嘗試解析一個巨大的JSON對象,就會發生這種情況,但是當我嘗試使用JSON和node0.11.13,一切正常。
您不需要更多--stack-size,您需要更多的內存:--max_new_space_size和/或--max_old_space_size。
我可以給您的唯一提示是嘗試另一個JSON解析器和/或嘗試將輸入格式更改為JSON行而不是僅JSON。

TA貢獻1829條經驗 獲得超7個贊
要解決此問題,您需要通過使用option增加內存限制來運行應用程序--max_old_space_size。默認情況下,Node.js的內存限制為512 mb。
node --max_old_space_size=2000 server.js

TA貢獻1828條經驗 獲得超13個贊
我發現這max_new_space_size不是節點4.1.1中的選項,max_old_space_size僅靠它并不能解決我的問題。我將以下內容添加到我的shebang中,并且這些方法的組合似乎有效:
#!/usr/bin/env node --max_old_space_size=4096 --optimize_for_size --max_executable_size=4096 --stack_size=4096
[編輯]:4096 === 4GB的內存,如果您的設備內存不足,則可能需要選擇較小的容量。
[更新]:運行grunt時還發現了此錯誤,該錯誤以前是這樣運行的:
./node_modules/.bin/grunt
將命令更新為以下命令后,它不再出現內存錯誤:
node --max_old_space_size=2048 ./node_modules/.bin/grunt
- 4 回答
- 0 關注
- 1581 瀏覽
添加回答
舉報