溫馨提示×

如何在CentOS中配置Node.js內存限制

小樊
40
2025-09-20 01:25:23
欄目: 編程語言

在 CentOS 中配置 Node.js 應用程序的內存限制,可以通過以下幾種方法實現:

方法一:使用環境變量

  1. 設置環境變量: 你可以在啟動 Node.js 應用程序時,通過設置 NODE_OPTIONS 環境變量來限制內存使用。例如,限制內存為 2GB:

    export NODE_OPTIONS="--max-old-space-size=2048"
    

    這個命令會將 Node.js 的最大老生代空間大小設置為 2GB。

  2. 在 systemd 服務文件中設置: 如果你的 Node.js 應用程序是通過 systemd 管理的,可以在服務文件中添加環境變量。編輯你的 systemd 服務文件(通常位于 /etc/systemd/system/your-service.service),添加以下內容:

    [Service]
    Environment="NODE_OPTIONS=--max-old-space-size=2048"
    ExecStart=/usr/bin/node /path/to/your/app.js
    

    然后重新加載 systemd 配置并重啟服務:

    sudo systemctl daemon-reload
    sudo systemctl restart your-service
    

方法二:使用 PM2

PM2 是一個流行的 Node.js 進程管理器,可以方便地管理 Node.js 應用程序,并且支持內存限制。

  1. 安裝 PM2: 如果你還沒有安裝 PM2,可以使用 npm 安裝:

    npm install pm2 -g
    
  2. 啟動應用程序并設置內存限制: 使用 PM2 啟動你的 Node.js 應用程序,并設置內存限制。例如,限制內存為 2GB:

    pm2 start app.js --max-memory-restart 2G
    

    這個命令會在內存使用超過 2GB 時自動重啟應用程序。

  3. 查看和管理進程: 你可以使用 PM2 提供的命令來查看和管理你的 Node.js 進程:

    pm2 list
    pm2 logs
    pm2 stop app
    pm2 restart app
    pm2 delete app
    

方法三:使用 Docker

如果你使用 Docker 來部署 Node.js 應用程序,可以在 Dockerfile 中設置內存限制。

  1. 創建 Dockerfile: 在你的項目目錄中創建一個 Dockerfile,內容如下:

    FROM node:14
    
    # 設置工作目錄
    WORKDIR /usr/src/app
    
    # 復制 package.json 和 package-lock.json
    COPY package*.json ./
    
    # 安裝依賴
    RUN npm install
    
    # 復制應用程序代碼
    COPY . .
    
    # 暴露端口
    EXPOSE 3000
    
    # 啟動應用程序,并設置內存限制
    CMD ["node", "--max-old-space-size=2048", "app.js"]
    
  2. 構建 Docker 鏡像: 使用以下命令構建 Docker 鏡像:

    docker build -t your-app .
    
  3. 運行 Docker 容器并設置內存限制: 使用以下命令運行 Docker 容器,并設置內存限制為 2GB:

    docker run -m 2g --name your-container your-app
    

通過以上幾種方法,你可以在 CentOS 中配置 Node.js 應用程序的內存限制。選擇適合你項目的方法進行配置即可。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女