在 CentOS 系統中,ulimit 是一個用于控制 shell 進程資源限制的命令。要提高 CentOS 的 ulimit 以增加并發能力,可以按照以下步驟操作:
臨時調整 ulimit
在當前 shell 會話中,可以使用 ulimit
命令來臨時調整資源限制。例如,要增加最大文件描述符數量,可以執行:
ulimit -n 65535
要使這個更改永久生效,需要編輯 /etc/security/limits.conf
文件。
永久調整 ulimit
編輯 /etc/security/limits.conf
文件,添加或修改以下行:
* soft nofile 65535
* hard nofile 65535
這將為所有用戶設置軟限制和硬限制。如果只想為特定用戶設置限制,可以將 *
替換為用戶名。
保存并關閉文件后,重新登錄以使更改生效。
調整內核參數
編輯 /etc/sysctl.conf
文件,添加或修改以下行:
fs.file-max = 100000
這將增加系統可以打開的最大文件描述符數量。根據需要調整該值。
保存并關閉文件后,運行以下命令使更改生效:
sysctl -p
調整 systemd 服務限制
如果你的應用程序是通過 systemd 管理的,還需要調整 systemd 服務的資源限制。編輯服務的 .service
文件,例如 /etc/systemd/system/myapp.service
,添加以下行:
[Service]
LimitNOFILE=65535
保存并關閉文件后,重新加載 systemd 配置并重啟服務:
systemctl daemon-reload
systemctl restart myapp
完成以上步驟后,CentOS 的 ulimit 應該已經提高,從而提高了并發能力。請注意,根據實際需求和系統資源情況調整這些值。在生產環境中進行調整時,請務必謹慎操作。