Centos7操作系统参数调优
2026/4/22 20:05:59 网站建设 项目流程

下面列出了一些Centos7操作系统的配置参数,通过调整这些参数,可以让系统效率更高。

调整Centos7操作系统的配置参数

在etc目录下面,存在sysctl.conf文件,通过配置这个文件,可以调整系统的参数。

配置参数及解读

①.系统允许同时发起的TCP连接数。在许多的主流操作系统上这个值都默认是128。

net.core.somaxconn=65535


②.每个网络端口接收数据包的速率比内核处理这些包的速率快时,允许送到队列的数据包的最大数目

net.core.netdev_max_backlog=65536



③.系统允许的半连接(SYN)同步包上限

net.ipv4.tcp_max_syn_backlog=65536


下面的文字内容是对该参数的说明:

打个简单的比方,某某发布公告要邀请四海之内若干客人到场参加酒席。客人参加酒席分为两个步骤:

1、到大厅;
2、找到座位(吃东西,比如糖果、饭菜、酒等)。
tcp_max_syn_backlog用于指定酒席现场面积允许容纳多少人进来;
somaxconn用于指定有多少个座位。
显然tcp_max_syn_backlog>=somaxconn。
如果要前来的客人数量超过tcp_max_syn_backlog,那么多出来的人虽然会跟主任见面握手,但是要在门外等候;
如果到大厅的客人数量大于somaxconn,那么多出来的客人就会没有位置坐(必须坐下才能吃东西),只能等待有人吃完有空位了才能吃东西。

什么是半连接: 未完成三次握手的连接就是半连接,已完成的叫做完全连接
三次握手:
1、第一次握手:客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;
2、第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
3、第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。


④这个参数是用来设置保持在FIN_WAIT_2状态的时间。tcp4次挥手,正常的处理流程就是在FIN_WAIT_2情况下接收到FIN进入到TIME_WAIT的情况,tcp_fin_timeout参数对处于TIME_WAIT状态的时间没有任何影响。但是如果这个参数设的比较小,会缩短从FIN_WAIT_2到TIME_WAIT的时间,从而使连接更早地进入TIME_WAIT状态。状态开始的早,等待相同的时间,结束的也早,客观上也加速了TIME_WAIT状态套接字的清理速度。

net.ipv4.tcp_fin_timeout=10


⑤TIME-WAIT套接字是否允许重用于新的TCP连接,了解网络的情况建议开启=1,提高连接速度。不熟悉网络配置的情况下建议关闭=0。

net.ipv4.tcp_tw_reuse=0


⑥表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭。

net.ipv4.tcp_tw_recycle=0


⑦发送与接收数据的缓存值

net.core.wmem_default=262144
net.core.wmem_max=524288
net.core.rmem_default=262144
net.core.rmem_max=524288


⑧长连接的心跳包机制,设置心跳包开始时机为,发送数据包后半小时开始心跳检查,

net.ipv4.tcp_keepalive_time=1800


⑨长连接的心跳包机制,心跳包发送间隔时间10秒

net.ipv4.tcp_keepalive_intvl=10

⑩长连接的心跳包机制,超过3次没有应答,则认为连接无效,将其丢弃。

net.ipv4.tcp_keepalive_probes=3

⑪Linux进程可以分配的单独共享内存的最大值,大于 INNODB_POOL_SIZE与QUERY_CACHE及其他MySQL占用内存总和。建议总内存的60%左右,2147483648 字节(B) = 2GB

kernel.shmmax=2147483648


⑫swappiness的值越大,表示越积极使用swap分区,越小表示越积极使用物理内存。默认值swappiness=60,0代表优先使用物理内存对数据进行处理。

vm.swappiness=0

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询