linux——系统内核参数优化
vim /etc/sysctl.conf
net.ipv4.tcp_syncookies = 1
fs.file-max = 999999
net.ipv4.tcp_max_tw_buckets = 6000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.core.somaxconn=262114
net.core.netdev_max_backlog=262114
net.ipv4.tcp_max_syn_backlog = 262114
net.ipv4.tcp_max_orphans=262114
net.ipv4.tcp_synack_retries=1
net.ipv4.tcp_syn_retries=1
net.ipv4.tcp_keepalive_time = 600
net.ipv4.tcp_fin_timeout = 30
net.ipv4.ip_local_port_range = 1024 65000
net.ipv4.tcp_rmem = 10240 87380 12582912
net.ipv4.tcp_wmem = 10240 87380 12582912
net.core.netdev_max_backlog = 8096
net.core.rmem_default = 6291456
net.core.wmem_default = 6291456
net.core.rmem_max = 12582912
net.core.wmem_max = 12582912
net.ipv4.tcp_syncookies = 1:选项使用于设置开启SYN cookies,当出现SYN等待队列溢出时,启使用cookies进行解决;
fs.file-max = 999999:这个参数表示进程(比方一个worker进程)可以同时打开的最大句柄数,这个参数直线限制最大并发连接数,需根据实际情况配置;
net.ipv4.tcp_max_tw_buckets =6000:这个参数使用来设定timewait数量,假如超过这个数字,TIME_WAIT套接字将立刻被清理并打印警告信息。该参数默认为180 000,过多的TIME_WAIT套接字会使Web服务器变慢;
net.ipv4.tcp_tw_recycle=1:这个参数使用于设置启使用timewait快速回收;
net.ipv4.tcp_tw_reuse = 1:这个参数设置为1,表示允许将TIME-WAIT状态的socket重新使用于新的TCP连接,这对于服务器来说很有意义,由于服务器上总会有大量TIME-WAIT状态的连接;
net.core.somaxconn=262114 :选项默认值是128,这个参数使用于调节系统同时发起的TCP连接数,在高并发的请求中,默认的值可能会导致链接超时或者者重传,因而需要结合高并发请求数来调节此值;
net.core.netdev_max_backlog=262114:该选项表示每个网络接口接收数据包的速率比内核解决这些包的速率快时,允许发送到队列数据包的最大数目;
net.ipv4.tcp_max_syn_backlog =262114:这个参数表示TCP三次握手建立阶段接受SYN请求队列的最大长度,默认为1024,将其设置得大少量可以使出现Nginx繁忙来不及accept新连接的情况时,Linux不至于丢失用户端发起的连接请求;
net.ipv4.tcp_max_orphans=262114:选项使用于设定系统中最多有多少个TCP套接字不被关联到任何一个使用户文件句柄上。假如超过这个数字,孤立链接将立即被复位并输出警告信息。这个限制指示为了防止简单的DOS攻击,不使用过分依靠这个限制甚至认为的减小这个值,更多的情况是添加这个值;
net.ipv4.tcp_synack_retries=1:内核放弃连接之前发送SYN+ACK包的数量;
net.ipv4.tcp_syn_retries=1:内核放弃连接之前发送SYN包的数量;
net.ipv4.tcp_keepalive_time = 600:这个参数表示当keepalive启使用时,TCP发送keepalive消息的频度。默认是2小时,若将其设置的小少量,可以更快地清除无效的连接;
net.ipv4.tcp_fin_timeout = 30:这个参数表示当服务器主动关闭连接时,socket保持在FIN-WAIT-2状态的最大时间;
net.ipv4.ip_local_port_range = 1024 61000:这个参数定义了在UDP和TCP连接中本地(不包括连接的远端)端口的取值范围;
net.ipv4.tcp_rmem = 10240 87380 12582912:这个参数定义了TCP接受缓存(使用于TCP接受滑动窗口)的最小值、默认值、最大值;
net.ipv4.tcp_wmem = 10240 87380 12582912:这个参数定义了TCP发送缓存(使用于TCP发送滑动窗口)的最小值、默认值、最大值;
net.core.netdev_max_backlog = 8096:当网卡接受数据包的速度大于内核解决的速度时,会有一个队列保存这些数据包。这个参数表示该队列的最大值;
net.core.rmem_default = 6291456:这个参数表示内核套接字接受缓存区默认的大小;
net.core.wmem_default = 6291456:这个参数表示内核套接字发送缓存区默认的大小;
net.core.rmem_max = 12582912:这个参数表示内核套接字接受缓存区的最大大小;
net.core.wmem_max = 12582912:这个参数表示内核套接字发送缓存区的最大大小;
net.ipv4.tcp_syncookies = 1:该参数与性能无关,使用于处理TCP的SYN攻击;
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » linux——系统内核参数优化