Linux内核调优部分参数说明

#接收套接字缓冲区大小的默认值(以字节为单位)。

net.core.rmem_default = 262144

#接收套接字缓冲区大小的最大值(以字节为单位)。

net.core.rmem_max = 16777216

#发送套接字缓冲区大小的默认值(以字节为单位)。

net.core.wmem_default = 262144

#发送套接字缓冲区大小的最大值(以字节为单位)。

net.core.wmem_max = 16777216

#用来限制监听(LISTEN)队列最大数据包的数量,超过这个数量就会导致链接超时或者触发重传机制。

net.core.somaxconn = 262144

#当网卡接收数据包的速度大于内核处理的速度时,会有一个队列保存这些数据包。这个参数表示该队列的最大值。

net.core.netdev_max_backlog = 262144

#表示系统中最多有多少TCP套接字不被关联到任何一个用户文件句柄上。如果超过这里设置的数字,连接就会复位并输出警告信息。这个限制仅仅是为了防止简单的DoS攻击。此值不能太小。

net.ipv4.tcp_max_orphans = 262144

#表示那些尚未收到客户端确认信息的连接(SYN消息)队列的长度,默认为1024,加大队列长度为262144,可以容纳更多等待连接的网络连接数。

net.ipv4.tcp_max_syn_backlog = 262144

#表示系统同时保持TIME_WAIT套接字的最大数量。如果超过此数,TIME_WAIT套接字会被立刻清除并且打印警告信息。之所以要设定这个限制,纯粹为了抵御那些简单的DoS攻击,不过,过多的TIME_WAIT套接字也会消耗服务器资源,甚至死机。

net.ipv4.tcp_max_tw_buckets = 10000

#表示允许系统打开的端口范围。

net.ipv4.ip_local_port_range = 1024 65500

#以下两参数可解决生产场景中大量连接的服务器中TIME_WAIT过多问题。

#表示开启TCP连接中TIME_WAIT套接字的快速回收,默认为0,表示关闭。

net.ipv4.tcp_tw_recycle = 1

#表示允许重用TIME_WAIT状态的套接字用于新的TCP连接,默认为0,表示关闭。

net.ipv4.tcp_tw_reuse = 1

#当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭。

net.ipv4.tcp_syncookies = 1

#表示系统允许SYN连接的重试次数。为了打开对端的连接,内核需要发送一个SYN并附带一个回应前面一个SYN的ACK包。也就是所谓三次握手中的第二次握手。这个设置决定了内核放弃连接之前发送SYN+ACK包的数量。

net.ipv4.tcp_synack_retries = 1

#表示在内核放弃建立连接之前发送SYN包的数量。

net.ipv4.tcp_syn_retries = 1

#减少处于FIN-WAIT-2连接状态的时间,使系统可以处理更多的连接。

net.ipv4.tcp_fin_timeout = 30

#这个参数表示当keepalive启用时,TCP发送keepalive消息的频度。默认是2小时,若将其设置得小一些,可以更快地清理无效的连接。

net.ipv4.tcp_keepalive_time = 600

#探测消息未获得响应时,重发该消息的间隔时间(秒)。系统默认75秒。

net.ipv4.tcp_keepalive_intvl = 30

#在认定连接失效之前,发送多少个TCP的keepalive探测包。系统默认值是9。这个值乘以tcp_keepalive_intvl之后决定了,一个连接发送了keepalive探测包之后可以有多少时间没有回应。

net.ipv4.tcp_keepalive_probes = 3

# 确定TCP栈应该如何反映内存使用,每个值的单位都是内存页(通常是4KB)。第一个值是内存使用的下限;第二个值是内存压力模式开始对缓冲区使用应用压 力的上限;第三个值是内存使用的上限。在这个层次上可以将报文丢弃,从而减少对内存的使用。示例中第一个值为786432*4/1024 /1024=3G,第二个值为1048576*4/1024/1024=4G,第三个值为1572864*4/1024/1024=6G。

net.ipv4.tcp_mem = 786432 1048576 1572864

#此参数限制并发未完成的异步请求数目,应该设置避免I/O子系统故障。

fs.aio-max-nr = 1048576

#该参数决定了系统中所允许的文件句柄最大数目,文件句柄设置代表linux系统中可以打开的文件的数量。

fs.file-max = 6815744

#第一列,表示每个信号集中的最大信号量数目。

#第二列,表示系统范围内的最大信号量总数目。

#第三列,表示每个信号发生时的最大系统操作数目。

#第四列,表示系统范围内的最大信号集总数目。

#(第一列)*(第四列)=(第二列)

kernel.sem = 250 32000 100 128

#表示尽量使用内存,减少使用磁盘swap交换分区,内存速度明显高于磁盘一个数量级。

vm.swappiness = 0

转自http://dongsong.blog.51cto.com/916653/1631085

时间: 2024-10-24 20:01:14

Linux内核调优部分参数说明的相关文章

大战C100K之-Linux内核调优篇--转载

原文地址:http://joyexpr.com/2013/11/22/c100k-4-kernel-tuning/ 早期的系统,系统资源包括CPU.内存等都是非常有限的,系统为了保持公平,默认要限制进程对资源的使用情况.由于Linux的默认内核配置无法满足C100K的要求,因此需要对其进行适当的调优. 我们可以通过 ulimit 查看一下典型的机器默认的限制情况: $ ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -

linux内核调优tcp_max_syn_backlog和somaxconn的区别

The behavior of the backlog argument on TCP sockets changed with Linux 2.2. Now it specifies the queue length for completely established sockets waiting to be accepted, instead of the number of incomplete connection requests. The maximum length of th

linux内核调优参考

对于新部署的机器,需要做一些基本的调优操作,以更改一些默认配置带来的性能问题 1 修改打开文件数 [email protected]:/data/tools/db# vim /etc/security/limits.conf * soft nofile 65535 * soft nproc 65535 * hard nofile 65535 * hard nproc 65535 [email protected]:/data/tools/db# cd /etc/security/limits.d

linux内核调优参数对比和解释

具体情况要具体分析,此处只是收集通常会利用到的一些参数的调整,做一些简单的对比和解释. [net] ######################## cat /proc/sys/net/ipv4/tcp_syncookies # 默认值:1 # 作用:是否打开SYN Cookie功能,该功能可以防止部分SYN攻击 net.ipv4.tcp_syncookies = 1 ######################## cat /proc/sys/net/ipv4/ip_local_port_ra

linux内核调优生产环境实例及详解(服务器内核优化)

cat > /etc/sysctl.conf << EOF net.ipv4.ip_forward = 0         net.ipv4.conf.all.rp_filter = 1 net.ipv4.conf.default.rp_filter = 1 net.ipv4.conf.default.accept_source_route = 0 kernel.sysrq = 0 kernel.core_uses_pid = 1 net.bridge.bridge-nf-call-ip

linux内核调优

内核参数目录cd /proc/sys/net/ipv4/内核参数修改vim /etc/sysctl.confnet.ipv4.tcp_syn_retries = 1net.ipv4.tcp_synack_retries = 1net.ipv4.tcp_keepalive_time = 600net.ipv4.tcp_keepalive_probes = 3net.ipv4.tcp_keepalive_intvl =15net.ipv4.tcp_retries2 = 5net.ipv4.tcp_f

高性能linux服务器内核调优

高性能linux服务器内核调优 首先,介绍一下两个命令1.dmesg 打印系统信息.有很多同学们服务器出现问题,看了程序日志,发现没啥有用信息,还是毫无解决头绪,这时候,你就需要查看系统内核抛出的异常信息了,使用dmesg命令,可以查看系统信息,dmesg -c 清除已经看过的信息.2.sysctl -p 生效内核配置在我们修改内核参数文件/etc/sysctl.conf后,需要执行以下sysctl -p 来使参数生效. nginx服务器内核调优 用户请求,最先进入的是nginx服务器,那我们首

LAMP 系统性能调优之内核调优措施

LAMP 系统性能调优之内核调优措施 2011-03-18 11:21 Sean A. Walberg 网络转载 字号:T | T 在对系统的 Apache.PHP 和 MySQL 组件进行调优之前,应该花一些时间确保底层 Linux 组件的运行正常.这点是非常重要的! AD:2014WOT全球软件技术峰会北京站 课程视频发布 LAMP LAMP的一些快速的内核调优措施 大多数 Linux 发布版都定义了适当的缓冲区和其他 Transmission Control Protocol(TCP)参数

linux 系统调优

1,用户最大进程数配置 Centos5环境修改/etc/security/limits.conf文件 Centos6环境修改/etc/security/limits.d/90-nproc.conf文件 [email protected]:/data/tools/db# vim /etc/security/limits.conf *               soft nofile          65535 *               soft nproc           65535