<返回更多

linux设置最大连接数

2022-07-25    少年与梦
加入收藏

linux设置最大连接数

1、最大文件打开数限制

vi /etc/security/limits.conf

*       soft    nofile 65535
*       hard    nofile 65535

vi /etc/profile

source /etc/profile # 配置立即生效

ulimit -u 65535
ulimit -SHn 65535
# 其他建议设置成无限制(unlimited)的一些重要设置是
ulimit -d unlimited
ulimit -m unlimited
ulimit -s unlimited
ulimit -t unlimited
ulimit -v unlimited

2、最大TCP连接数/etc/sysctl.conf的优化

vi /etc/sysctl.conf

sysctl -p # 配置立即生效

.NET.ipv4.ip_local_port_range = 1024 65535
net.ipv4.ip_conntrack_max = 20000
# 如果按上述端口范围进行设置,则理论上单独一个进程最多可以同时建立60000多个TCP客户端连接。
# 如果按上述参数进行设置,则理论上单独一个进程最多可以同时建立20000多个TCP客户端连接。

3、ulimit 作用和常用参数

ulimit 用于限制 shell 启动进程所占用的资源,支持以下各种类型的限制:所创建的内核文件的大小、进程数据块的大小、Shell 进程创建文件的大小、内存锁住的大小、常驻内存集的大小、打开文件描述符的数量、分配堆栈的最大大小、CPU 时间、单个用户的最大线程数、Shell 进程所能使用的最大虚拟内存。同时,它支持硬资源和软资源的限制。任何的超越都会导致进程的终止。

参数 描述 -a:显示目前资源限制的设定; -c <core文件上限>:设定core文件的最大值,单位为区块; -d <数据节区大小>:程序数据节区的最大值,单位为KB; -f <文件大小>:shell所能建立的最大文件,单位为区块; -H:设定资源的硬性限制,也就是管理员所设下的限制; -m <内存大小>:指定可使用内存的上限,单位为KB; -n <文件数目>:指定同一时间最多可开启的文件数; -p <缓冲区大小>:指定管道缓冲区的大小,单位512字节; -s <堆叠大小>:指定堆叠的上限,单位为KB; -S:设定资源的弹性限制; -t <CPU时间>:指定CPU使用时间的上限,单位为秒; -u <程序数目>:用户最多可开启的程序数目; -v <虚拟内存大小>:指定可使用的虚拟内存上限,单位为KB。

ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 3521
max locked memory       (kbytes, -l) 64
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) 3521
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
###################### 以上输出解释 ##################################
core file size  # core文件的最大值为100 blocks,
data seg size   # 进程的数据段可以任意大
file size       # 文件可以任意大
pending signals # 最多有2047个待处理的信号
max locked memory # 一个任务锁住的物理内存的最大值为64kB
max memory size #  一个任务的常驻物理内存的最大值
open files      # 一个任务默认最多可以同时打开1024的文件
pipe size       # 管道的最大空间为4096字节
POSIX message queues  # POSIX的消息队列的最大值为819200字节
stack size      # 进程的栈的最大值为8192字节
cpu time        # 进程使用的CPU时间
max user processes # 当前用户同时打开的进程(包括线程)的最大个数为3521
virtual memory  # 没有限制进程的最大地址空间
file locks      # 所能锁住的文件的最大个数没有限制
声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>