调整linux(ubuntu8.0.4)内核参数以便满足高并发访问,解决大量time_wait和syn攻击问题:
1 sudo vi /etc/sysctl.conf
在最下面编辑添加:
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_keepalive_time = 1200
net.ipv4.route.gc_timeout = 100
net.ipv4.ip_local_port_range = 1024 65000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_max_syn_backlog = 262144
net.core.netdev_max_backlog = 262144
net.core.somaxconn = 262144
net.ipv4.tcp_mem = 94500000 915000000 927000000
保存退出
2 sudo /sbin/sysctl -p
立刻生效(实践中有遇到不能立刻生效的,需要重启机子才能生效)
使用如下命令监控当前各状态连接:
1 netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
2 cat /proc/net/sockstat
3 查看是否有异常日志:dmesg
4 查看当前IP个数和每IP连接数:
netstat -an | grep 80 | awk '{print $5}' | awk 'BEGIN {FS=":"} NF==2 {print $1} NF==5 {print $4}' | sort | uniq -c | sort -n
默认值恢复:
net.ipv4.tcp_fin_timeout = 60
net.ipv4.tcp_keepalive_time = 7200
net.ipv4.route.gc_timeout = 300
net.ipv4.ip_local_port_range = 32768 61000
net.ipv4.tcp_tw_reuse = 0
net.ipv4.tcp_tw_recycle = 0
net.ipv4.tcp_syn_retries = 5
net.ipv4.tcp_synack_retries = 5
net.ipv4.tcp_max_syn_backlog = 1024
net.core.netdev_max_backlog = 1000
net.core.somaxconn = 128
net.ipv4.tcp_mem = 853440 1137920 1706880
以上配置在实际生产环境中单机1.7w连接数情况下nginx工作正常。
服务器优化推荐参考文章:
http://blog.sina.com.cn/s/blog_466c66400100bi2n.html~type=v5_one&label=rela_prevarticle
分享到:
相关推荐
详细讲解linux内核参数,及日常调优,包括网络,文件系统,tcp,内存等
linux 内核参数VM调优 之 参数调节和场景分析,非常详细的
Linux内核参数调整及ORACLE调优参数
移动终端Linux内核存储IO调优研究.pdf
Linux 下 系统参数的调优经验之谈,非常给力的!调优系统必备
Linux 内核网络参数配置资料 x x x x x x x x x
有关CPU的调优有关内存的调优有关I/O的调优有关网络的调优有关内核参数的调优
Linux内核调优 提高服务器整体性能及安全
Linux高性能服务调优实践 Linux高性能服务调优实践_邓刚.pdf 2018 内核开发者大会
在Linux中,我们可以根据不同的需求来调整/proc/sys/net/ipv4/目录下的内核网络参数,通过...linux内核网络参数中关于ip的配置参数通常是用来定义或调整ip包的一些特定的参数,除此之外还定义了系统的一些网络特性。
BootLoader 与Linux 内核的参数传递.pdf BootLoader 与Linux 内核的参数传递.pdf
Linux网络体系结构 Linux内核中网络协议的设计与实现,Linux网络体系结构 Linux内核中网络协议的设计与实现
《Linux内核网络栈源代码情景分析》主要对Linux1.2.13内核协议栈的全部源代码做了详细的分析,该版本所有代码都在一个文件夹中,每种协议的实现都只有一个文件与之对应,分析该版本源代码可以方便读者迅速掌握Linux...
详细描述了linux2.4/2.6内核版本中的网络子系统。解释了协议的工作方式、建立了Linux网络体系结构中的多种重要概念——从设备驱动程序概念一直到应用程序接口的概念。能帮助读者更容易理解 Linux网络架构的进程和...
鉴于此,《Linux内核精髓:精通Linux内核必会的75个绝技》选取了资源管理(CPU、内存、进程等)、文件系统、网络、虚拟化、省电、调试、概要分析、追踪、内核调整等Linux内核的核心主题进行了深入剖析和讲解,总结出...
Linux内核网络系统详解;很不错的资料
linux内核编译2.6.39linux内核编译2.6.39linux内核编译2.6.39linux内核编译2.6.39linux内核编译2.6.39linux内核编译2.6.39linux内核编译2.6.39linux内核编译2.6.39linux内核编译2.6.39linux内核编译2.6.39linux内核...
《linux内核网络部分源码分析》,很不粗的linux内核和网络的资料,希望对你的学习工作有所帮助。
理解Linux内核最好预备的知识点:懂C语言懂一点操作系统的知识熟悉少量相关算法懂计算机体系结构Linux内核的特点:结合了unix操作系统的一些基础概念Linux内核的任务:1.从技术层面讲,内核是硬件与软