linux最大线程数限制及打开最大文件数

1.root用户下执行 ulimit -a 然后查看 max user processes 这个值通常是系统最大线程数的一半

max user processes:当前用户同时打开的进程(包括线程)的最大个数为

2.普通用户下 ulimit -a 出现的max user processes的值 默认是 /etc/security/limits.d/20-nproc.conf文件中的设置值

注:

soft nproc :单个用户可用的最大进程数量(超过会警告);

hard nproc:单个用户可用的最大进程数量(超过会报错);

soft nofile :可打开的文件描述符的最大数(超过会警告);

hard nofile :可打开的文件描述符的最大数(超过会报错);

一般soft的值会比hard小,也可相等。

/etc/security/limits.d/里面配置会覆盖/etc/security/limits.conf的配置。

只有root用户才有权限修改/etc/security/limits.conf。

如果limits.conf没有做设定,则默认值是1024。

  1. 对于cat /etc/pid/limits中Max open files的修改

我们可以从system.conf修改或者在service文件里限制,只对此服务生效,我们这里以nginx服务为例

3.1 修改system.conf配置文件

其中DefaultLimitNOFILE为设置每个进程可以打开的文件描述符的数量上限

DefaultLimitNPROC为设置用户可以拥有的进程的数量上限

重启服务器以及nginx服务后再次查询

3.2 修改service文件

如果有修改需求建议用第二种,另外

/etc/security/limits.conf的配置,只适用于通过PAM认证登录用户的资源限制,它对systemd的service的资源限制不生效

对于systemd service的资源设置,则需修改全局配置,全局配置文件放在/etc/systemd/system.conf和/etc/systemd/user.conf,同时也会加载两个对应目录中的所有.conf文件/etc/systemd/system.conf.d/.conf和/etc/systemd/user.conf.d/.conf。

相关推荐
苏宸啊14 分钟前
linux线程池
linux
草莓熊Lotso16 分钟前
【LangChain】输出解析器全解:让大模型输出从 “聊天” 变 “机器可读”
服务器·数据库·python·langchain·pip
取谖慕12.22 分钟前
Prometheus+Alertmanager+node_exporter+grafana高可用
linux·运维·grafana·prometheus
小此方25 分钟前
Re:Linux系统篇(四十五)信号篇·三:一文讲透 Linux 信号保存机制:block,pending,handler三张表到底在做什么
linux·运维·服务器
C+-C资深大佬2 小时前
GitHub Actions 自动化运维实战:从零到一构建高效 CI/CD 流水线
运维·自动化·github
2301_777998349 小时前
Linux信号机制
linux
一叶龙洲11 小时前
win11与Ubuntu之间同步配置、插件
linux·运维·ubuntu
CHANG_THE_WORLD12 小时前
12.总结:深入理解 Linux I/O 多路复用:select、poll、epoll 全解析
linux·运维·服务器
风曦Kisaki12 小时前
# Linux笔记:操作系统优化与资源管理
linux·运维·服务器·笔记