七.系统资源调优

2018-09-30  本文已影响0人  阿里巴巴技术

关注ulimit命令

ulimit -a

最大打开文件数
常用案例日志:java.net.SocketException:Too many open files 打开太多的文件句柄

ulimit -n
#修改相关配置文件
/etc/security/limits.conf
#配置内容
* soft nofile 65536
* hard nofile 65536
注意修改后,退出应用或用户,java应用需要重启服务

最大用户数配置

ulimit -u
#修改以下配置文件(centos6.x)
/etc/security/limits.d/90-nproc.conf
#配置内容
* soft nproc 65536
root soft nproc unlimited
注意修改后,退出应用或用户,java应用需要重启服务

系统内核参数调优

常见案例日志:kernel:ip_conntrack:table ful ,dropping packet
具体原因内核参数IP链表满导致的

ip_conntack_max参数
#(centos5.x)
/proc/sys/net/ipv4/netfilter/ip_conntrack_max 或者
/proc/sys/net/ipv4/ip_conntrack_max
#(centos6.x)
/proc/sys/net/netfilter/nf_conntrack_max
#在/etc/sysctl.conf 配置文件中加入以下配置
#(centos5.x)
net.ipv4.netfilter.ip_conntrack_max = 655360
#(centos5.x)
net.nf_conntrack_max = 100000

注意:如果有硬件防火墙时,可以直接关掉内置防火墙,无需设置

swappiness参数

表示使用swap的概率,此值越大,表示使用swap的概率越大,推荐配置如下:
查看目前配置

cat /proc/sys/vm/swappiness

添加如下内容到/etc/sysctl.conf

vm.swappiness = 10

表示当内存使用率超过(100-10)90%时,才开始使用swap
注意:如果是Redis服务器应该设置为0,不然Redis会检查报错

线上web服务器配置参考(每天3亿的量)

具体相关配置可以自己查询

net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 10
net.ipv4.tcp_max_syn_backlog = 20000
net.core.netdev_max_backlog = 32768
net.core.somaxconn = 32768
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 2
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_max_orphans = 3276800
net.ipv4.tcp_fin_timeout = 10
net.ipv4.tcp_keepalive_time = 120
net.ipv4.ip_local_port_range = 1024 65535
net.ipv4.tcp_max_tw_buckets = 80000
net.ipv4.tcp_keepalive_time = 120
net.ipv4.tcp_keepalive_intvl = 15
net.ipv4.tcp_keepalive_probes = 5
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 10
net.ipv4.tcp_max_syn_backlog = 20000
net.core.netdev_max_backlog = 32768
net.core.somaxconn = 32768
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 2
net.ipv4.tcp_mem = 94500000 915000000 927000000 net.ipv4.tcp_max_orphans = 3276800
net.ipv4.ip_local_port_range = 1024 65535
net.ipv4.tcp_max_tw_buckets = 500000
net.ipv4.tcp_keepalive_time = 60
net.ipv4.tcp_keepalive_intvl = 15
net.ipv4.tcp_keepalive_probes = 5
net.nf_conntrack_max = 2097152

上一篇 下一篇

猜你喜欢

热点阅读