簡體   English   中英

AWS EC2 上的 JavaScript 堆內存不足

[英]JavaScript heap out of memory on AWS EC2

我正在使用 t2.micro 類型的 AWS EC2 實例,我正在嘗試通過使用tsc命令構建使用打字稿的 REST API,但我遇到了內存問題。

Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory

我嘗試使用--max_old_space_size-1024但它沒有解決任何問題。

  • 節點JS:v14.9.0
  • NPM:v6.14.8

有什么建議嗎?

昨天我也遇到了同樣的問題。 不要嘗試在 ec2 實例中構建 REST API。 您可以在本地構建它,您可以將構建文件(index.js)和 package.json 放入 ec2。 試用這篇文章。 https://auth0.com/blog/use-typescript-to-create-a-secure-api-with-nodejs-and-express-getting-started/ 然后安裝 node.js https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/setting-up-node-on-ec2-instance.html 然后通過“npm install”安裝依賴項並運行構建文件。 在我的情況下,“節點 index.js”運行。 添加進程管理器。

我遇到了同樣的問題。 我的問題是 t2.micro 實例只有 1GB 的內存,Node 需要 0.75 到 1GB 的內存來啟動我們的服務器。 我必須通過交換文件增加可用內存,然后通過--max_old_space_size增加 Node/V8 的內存限制。

具體來說,我們使用了一個 4GB 的交換文件,然后將 Node/V8 的最大舊空間大小增加到 2GB。 懷疑這些是理想的組合/比率,但它們對我們有用。 我想您可以使用 1GB 的交換空間和 1.5GB 的最大舊空間,但 YMMV。

另請參閱如何確定 node.js 的正確“最大舊空間大小”? 了解更多信息和最佳實踐

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM