ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Linux服务器内核参数优化

Linux服务器内核参数优化

原创 Linux操作系统 作者:yanguang1689 时间:2016-06-28 13:28:29 0 删除 编辑
   1、 Linux服务器内核参数优化,就是对业务服务应用而进行的系统内核参数调整。将优化参数加入文件/etc/sysctl.conf

点击(此处)折叠或打开

  1. net.ipv4.tcp_fin_timout = 2
  2. net.ipv4.tcp_tw_reuse = 1
  3. net.ipv4.tcp_tw_recycle = 1
  4. net.ipv4.tcp_syncookies = 1
  5. net.ipv4.tcp_keepalive_time = 600
  6. net.ipv4.ip_local_port_range = 4000 65000
  7. net.ipv4.tcp_max_syn_backlog = 16384
  8. net.ipv4.tcp_max_tw_buckets = 36000
  9. net.ipv4.tcp.route.gc_timeout = 100
  10. net.ipv4.tcp_syn_retries = 1
  11. net.ipv4.tcp_synack_retries = 1
  12. net.core.somaxconn = 16384
  13. net.core.netdev_max_backlog = 16384
  14. net.ipv4.tcp_max_orphans =16384

  15. ## iptables 防火墙优化
  16. net.nf_conntrack_max =25000000
  17. net.netfilter.nf_conntrack_max = 25000000
  18. net.netfilter.nf_conntrack_tcp_timeout_established = 180
  19. net.netfilter.nf_conntrack_tcp_timeout_time_wait =120
  20. net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60
  21. net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120
2、执行生效命令,(针对防火墙的优化,如果不开启防火墙,生效会报错。)
[root@www ~]# sysctl -p

3、内核参数含义:

参数

说明

net.ipv4.tcp_fin_timout

表示套接字由本端要求关闭,这个参数决定了它保持在FIN-WAIT-2状态的时间,默认60秒。

net.ipv4.tcp_tw_reuse

表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭

net.ipv4.tcp_tw_recycle

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

 

net.ipv4.tcp_syncookies

表示开启SYN Cookies功能。当出现SYN等待队列溢出时,启用Cookies来处理,可防范少量SYN攻击,默认为1

net.ipv4.tcp_keepalive_time

表示当keepalive启用时,TCP发送keepalive消息的频度。默认是2小时,建议10分钟

net.ipv4.ip_local_port_range

该选项用来设定允许系统打开的端口范围,即用于向外连接的端口范围

 

 net.ipv4.tcp_max_syn_backlog

表示SYN队列的长度,默认1024,建议加大队列的长度为8192或更多,这样可以容纳更多等待连接的网络连接数。该参数为服务端用于记录那些尚未收到客户端确认信息的连接请求最大值

 

 

 

net.ipv4.tcp_max_tw_buckets

表示系统同时保持TIME_WAIT套接字的最大数量,如果超过这个数值,TIME_WAIT套接字将立刻清除并打印警告信息。默认为180000,对于Apache、Nginx等服务器说可以将其调低点,(5000-30000),不同业务的服务器可以给大一点,如,LVS、Squid。此项参数可以控制TIME_WAIT套接字的最大数量,避免Squid服务器被大量的TIME_WAIT套接字拖死

net.ipv4.tcp.route.gc_timeout

表示路由缓存刷新频率,当一个路由失败后多长时间跳到另一个路由,默认为300

net.ipv4.tcp_syn_retries

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

net.ipv4.tcp_synack_retries

参数的值决定了内核放弃连接之前发送SYN+ACK包的数量

 

net.core.somaxconn

默认为128,这个参数用于调节系统同时发起的TCP连接数,在高并发的请求中,默认的值可能会导致链接超时或重传,因此,需要结合并发请求数来调节此值

 

net.core.netdev_max_backlog

表示当每个网络接口接受数据包的速率比内核处理这些包的速率快时,允许发送到队列的数据包最大数。

 

 

net.ipv4.tcp_max_orphans

用于设定系统中最多有多少个TCP套接字不被关联到任何一个用户文件句柄上。如果超过这个数值,孤立连接将立即被复位并打印出警告信息。这个限制只是为了防止简单的DoS攻击,不能过分依靠这个限制甚至人为减少这个值,更多的是增加这个值



来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30331499/viewspace-2121112/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2015-07-06

  • 博文量
    4
  • 访问量
    13950