Linux系统对每个登录的⽤户都限制其最⼤进程数和打开的最⼤⽂件句柄数。为了提⾼性能,可以根据硬件 资源的具体情况设置各个⽤户的最⼤进程数和打开的最⼤⽂件句柄数。可以⽤ulimit -a来显示当前的各种系统对⽤户使⽤资源的限制
root@ecs-x-large-2-linux-20200309113627:/home/etcd_msg_server# ulimit -a
core file size (blocks, -c) unlimited
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 15519
max locked memory (kbytes, -l) 65536
max memory size (kbytes, -m) unlimited
open files (-n) 65535
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 15519
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
ulimit 选择参数参考
Options:
-S 使用软资源限制
-H 使用“硬”资源限制
-a 显示当前所有的限制
-b 套接字缓冲区大小
-c 创建的核心文件的最大大小
-d 进程数据段的最大大小
-e 最大调度优先级(' nice')
-f shell及其子程序所写入的文件的最大大小
-i 待定信号的最大数目
-k 为该进程分配的最大kqueue数
-l 进程锁在内存中的最大大小
-m 最大常驻集大小
-n 打开的文件描述符的最大数目
-p 管道缓冲区大小
-q POSIX消息队列的最大字节数
-r 最大实时调度优先级
-s 最大堆栈大小
-t 最大CPU时间(以秒为单位)
-u 最大用户进程数
-v 虚拟内存大小
-x 文件锁的最大数量
-P 伪终端的最大数目
-T 最大线程数
设置⽤户的最⼤进程数:
ulimit -u 1024
设置⽤户可以打开的最⼤⽂件句柄数:
ulimit -n 65530