服务器配置怎么调整系统最大进程数限制

陌伟小哥_4045

陌伟小哥_4045

2026-08-27

952人浏览

原创

linux系统最大进程数由ulimit -u、pid_max、threads-max三层限制共同决定,最小值即真实上限;需同步配置limits.conf、systemd服务limitnproc及sysctl.d中pid_max/threads-max参数,并重载验证。

服务器配置怎么调整系统最大进程数限制

Linux 服务器上调整系统最大进程数限制,不是改一个参数就能生效的事。它由三层独立但相互制约的限制共同决定:用户级(ulimit -u)、系统级 PID 池上限(/proc/sys/kernel/pid_max)、内核总线程容量(/proc/sys/kernel/threads-max)。三者中最小的那个值,就是你实际能用的上限。漏掉任何一层,高并发服务(如 Java 应用、Nginx、Redis)仍会报 fork: Cannot allocate memory 或 java.lang.OutOfMemoryError: unable to create new native thread。


查清当前卡在哪一层

别猜,直接查三个关键值:

  • 当前用户能开多少进程/线程:
    ulimit -u

  • 全局最多可分配多少个 PID(即系统级上限):
    cat /proc/sys/kernel/pid_max

  • 内核允许的总线程数(受内存和 pid_max 共同约束):
    cat /proc/sys/kernel/threads-max

再看当前已用线程总数:
ps -eLf | wc -l

哪个数值最小,哪个就是真实瓶颈。比如 pid_max=4194304、threads-max=131072,但 ulimit -u=4096,那第 4097 个线程就失败——再大的内核池也没用。


永久调整用户级进程/线程总数(最常见生效点)

Linux 中线程也占用 PID,所以 ulimit -u 同时限制进程 + 线程总数。这是普通服务启动时最先触达的限制。

在 /etc/security/limits.d/90-nproc.conf 中写入:

HTML5主机托管服务公司网站模板
HTML5主机托管服务公司网站模板

HTML5主机托管服务公司网站模板是一款从事主机托管服务公司宣传网站模板下载。提示:本模板调用到谷歌字体库,可能会出现页面打开比较缓慢。

下载
* soft nproc 65535
* hard nproc 65535
root soft nproc 65535
root hard nproc 65535

确保 PAM 加载该配置:
检查 /etc/pam.d/common-session 和 /etc/pam.d/common-session-noninteractive 是否包含:
session required pam_limits.so

普通用户需完全登出重登录(SSH 重连),或执行 su - $USER 触发重载;source 或重启 sshd 无效。


配置 systemd 服务的进程数限制(对 systemctl 启动的服务必须单独设)

/etc/security/limits.conf 对 systemd 服务完全无效。nginx、Java、Spring Boot 等通过 systemctl start 启动的服务,必须显式配置:

  • 单服务生效(推荐):
    sudo systemctl edit your-service.service
    添加:

    [Service]
    LimitNPROC=65535
  • 全局生效(慎用):
    sudo systemctl edit --full systemd-system.conf
    加入:

    DefaultLimitNPROC=65535

改完必须执行:
sudo systemctl daemon-reload && sudo systemctl restart your-service

验证是否生效:
prlimit -n $(pgrep -f "your-service" | head -1)


同步调大内核级上限(pid_max 和 threads-max)

若用户级已放开,但仍 fork 失败或线程数上不去,说明内核池子不够。

  • 临时设置(验证用):
    sudo sysctl -w kernel.pid_max=2097152
    sudo sysctl -w kernel.threads-max=131072

  • 永久生效(推荐方式):
    新建 /etc/sysctl.d/99-pidmax.conf,内容为:

    kernel.pid_max = 2097152
    kernel.threads-max = 131072

    执行:
    sudo sysctl --system

⚠️ 注意:

  • threads-max 不应显著超过 pid_max,建议设为 pid_max 的 60%~80%;
  • x86_64 架构下 pid_max 最高支持 4194304,设更高会被静默截断;
  • 修改后务必运行 cat /proc/sys/kernel/pid_max 确认值已更新,否则配置未生效(空格、不可见字符都会导致失败)。

不复杂但容易忽略

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

457

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

940

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

3072

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

1016

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

909

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

474

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

2796

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

5232

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

827

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Revel 官方 Deployment 文档
Revel 官方 Deployment 文档

共0课时 | 0人学习

phpMyAdmin 配置文档
phpMyAdmin 配置文档

共0课时 | 0人学习