裸机常见内核优化
- net.ipv4.ip_forward = 0 # 开启 IP 转发, 根据业务需要开启
- net.ipv4.conf.default.rp_filter = 1 # 开启反向路径过滤 1. 减少 DDoS 攻击 2. 防止 IP Spoofing
- net.ipv4.conf.default.accept_source_route = 0 # 处理无源路由的包
- kernel.core_uses_pid = 1 #开启内核转存 core dump, 排错用
- net.ipv4.tcp_syncookies = 1 #开启 SYN Cookies. 当出现 SYN 等待队列溢出时, 启用 cookies 来处理, 可防范少量 SYN 攻击
- kernel.msgmnb = 65536 #消息队列的最大长度 (bytes).
- kernel.msgmax = 65536 #进程之间发送消息的最大长度 (bytes)
- # 优化网络传输
- net.ipv4.conf.all.promote_secondaries = 1
- net.ipv4.conf.default.promote_secondaries = 1
- net.ipv6.neigh.default.gc_thresh3 = 4096
- net.ipv4.neigh.default.gc_thresh3 = 4096
- kernel.softlockup_panic = 1 #值为 1 可以让内核在死锁或者死循环的时候可以宕机重启
- kernel.sysrq = 1 # 修改这个值为 1 激活 SysRq 来触发 core dump, 排错用
- kernel.numa_balancing = 0 #NUMA 平衡 默认关闭
- kernel.shmmax = 68719476736 #配置共享内存段的最大值
- kernel.printk = 5 #内核 printk 的打印级别
负载均衡 RS 常见内核优化
二. 快速回收 nginx 配置
- # 打开 syn cookie
- net.ipv4.tcp_syncookies = 1
- # 降低接受 / 建立连接重试次数
- net.ipv4.tcp_synack_retries = 3
- net.ipv4.tcp_syn_retries = 3
- # 打开 time wait 端口复用
- net.ipv4.tcp_tw_reuse = 1
- # 关闭 tcp_tw_recycle/tcp_timestamps 选项, 避免 HTTP 代理导致的异常行为,
- net.ipv4.tcp_tw_recycle = 0
- net.ipv4.tcp_timestamps = 0
- # 降低 tcp time wait 状态保持数量, 快速释放资源
- net.ipv4.tcp_max_tw_buckets = 5000
- # 降低 tcp FIN_WAIT_2 状态超时时间
- net.ipv4.tcp_fin_timeout = 15
来源: https://www.qcloud.com/developer/article/1530198