linux环境高并发时服务器参数优化

润信云 技术支持

调整 /etc/security/limits.conf

编辑该文件,添加/修改以下参数
#设定每个用户或用户组的最大文件打开数限制

* soft nofile 65535
* hard nofile 65535


如果需要在当前shell立即生效,执行以下命令

ulimit -n 65535
ulimit -Hn 65535

调整 /etc/sysctl.conf

编辑该文件,添加/调整以下参数

# TCP SYN cookies是一种防范DDoS攻击的机制,用于保护服务器免受TCP SYN洪水攻击的影响。
# 在TCP三次握手建立连接的过程中,
# 攻击者可能发送大量的TCP SYN请求,占用服务器资源并导致服务不可用。
# 当启用TCP SYN cookies时,服务器可以在接收到TCP SYN请求后通过计算一个特殊的cookie来响应客户端。
# 这个cookie包含了一些与连接相关的信息,如源IP地址、目标IP地址、端口号等。
# 如果客户端的后续请求中包含了正确的cookie,
# 服务器会根据该cookie恢复连接并建立正常的通信。
# TCP SYN cookies的主要目标是在服务器不会消耗大量资源的情况下,防止服务器因SYN洪水攻击而拒绝服务。
# 它通过避免在服务器端维护半开连接状态,而是将连接的一些信息编码为cookie发送回客户端,减轻了服务器的负担。
# 需要注意的是,TCP SYN cookies可在操作系统或网络设备上进行配置。启用TCP SYN cookies可能会对网络性能产生一定影响,
# 并且在某些情况下可能与现有的网络设备或应用程序不兼容。
# TCP SYN cookies可以帮助服务器在高并发场景下保护自身免受TCP SYN洪水攻击的影响,提高系统的可用性和稳定性。
net.ipv4.tcp_syncookies = 1

# 表示是否允许在处于TIME_WAIT状态的套接字上重用本地地址和端口。在TCP连接关闭过程中,
# 会进入TIME_WAIT状态一段时间,保证连接中残留的报文段在网络中被清除。
# 启用TCP_TW_REUSE参数后,操作系统可以允许处于TIME_WAIT状态的套接字在短时间内被重用,
# 以满足高并发场景下的连接需求。这样可以有效地减少端口耗尽的问题,并提高系统的连接复用能力。
# 需要注意,在高并发环境下启用TCP_TW_REUSE参数可能会存在一些风险。
# 当处于TIME_WAIT状态的连接被重用时,旧连接可能会和新连接发生冲突,导致数据混乱或安全问题。
net.ipv4.tcp_tw_reuse = 1

//减少连接断开后的等待时间。
net.ipv4.tcp_fin_timeout = 30

# 高并发环境中可能会有大量的TCP连接处于空闲状态,即没有数据交换的状态。在这种情况下,
# 长时间保持这些空闲连接可能会浪费服务器资源,并且可能会降低系统的处理能力。
# 通过设置较短的TCP_KEEPALIVE_TIME参数,可以及时检测和关闭空闲的TCP连接,
# 有效地释放服务器资源,提高系统的处理能力和效率。
net.ipv4.tcp_keepalive_time = 1200


# 参数决定了可以用于本地应用程序的端口范围
# 如果不修改,可能端口不够用
net.ipv4.ip_local_port_range = 1024 65000

//扩大TCP连接的半连接队列的大小,增加服务器可以处理的连接请求数量
net.ipv4.tcp_max_syn_backlog = 262144 

# 参数限制了系统内核可以同时维持的 TIME-WAIT 连接的数量。
设置较大的值可以容纳更多的连接,但会增加系统内存的使用。
net.ipv4.tcp_max_tw_buckets = 10000


调整后,执行以下命令生效

sysctl -p


调整 /etc/systemd/system.conf

修改以下参数

# systemd 参数,用于设置系统服务进程的默认打开文件描述符
DefaultLimitNOFILE=65535


调整nginx参数(/etc/nginx/nging.conf)

如果使用的是nginx,则需要调整一下nginx参数

events {
	worker_connections 65535
}

然后重启nginx
systemctl restart nginx

小结

为了应对服务器上的高并发,以上是必须调整的参数。其他的需要根据实际情况略作调整。



本文链接:https://blog.runxinyun.com/post/328.html 转载需授权!

分享到:
版权声明
网站名称: 润信云资讯网
本站提供的一切软件、教程和内容信息仅限用于学习和研究目的。
不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。
我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!邮件:7104314@qq.com
网站部分内容来源于网络,版权争议与本站无关。请在下载后的24小时内从您的设备中彻底删除上述内容。
如无特别声明本文即为原创文章仅代表个人观点,版权归《润信云资讯网》所有,欢迎转载,转载请保留原文链接。
0 71

留言0

评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。