打开配置文件

vi /etc/sysctl.conf

输入配置,如下是内核优化的参数

# TCP三次握手建立阶段接收SYN请求队列的最大长度,默认为1024(将其设置得大一些可以使出现Nginx繁忙来不及accept新连接的情况时,Linux不至于丢失客户端发起的连接请求)
net.ipv4.tcp_max_syn_backlog = 65536
# 数据包队列的最大值(当网卡接收数据包的速度大于内核处理的速度时,会有一个队列保存这些数据包)
net.core.netdev_max_backlog = 32768
# 每一个端口最大的监听队列的长度,默认值为128
net.core.somaxconn = 32768 # 内核套接字发送缓冲区默认的大小
net.core.wmem_default = 262144
# 内核套接字发送缓冲区最大大小
net.core.wmem_max = 2097152
# 内核套接字接收缓冲区默认的大小
net.core.rmem_default = 262144
# 内核套接字接收缓冲区最大大小
net.core.rmem_max = 2097152 # TCP接收缓存(用于TCP接收滑动窗口)的最小值、默认值、最大值
net.ipv4.tcp_rmem = 4096 32768 262142
# TCP发送缓存(用于TCP发送滑动窗口)的最小值、默认值、最大值
net.ipv4.tcp_wmem = 4096 32768 262142
# TCP的内存大小,其单位是页,1页等于4096字节,系统默认值:cat /proc/sys/net/ipv4/tcp_mem
net.ipv4.tcp_mem=94500000 915000000 927000000
# 系统所能处理不属于任何进程的TCP sockets最大数量
net.ipv4.tcp_max_orphans=3276800 # 当服务器主动关闭连接时,socket保持在FIN-WAIT-2状态的最大时间
net.ipv4.tcp_fin_timeout = 30
# 当keepalive启用时,TCP发送keepalive消息的频度(若将其设置得小一些,可以更快清理无效的连接)
net.ipv4.tcp_keepalive_time = 120
# 在UDP和TCP连接中本地端口的取值范围
net.ipv4.ip_local_port_range = 1024 61000 # 限制进程最大并发连接数,根据实际情况配置
fs.file-max = 65536
# 操作系统允许TIME-WAIT套接字数量的最大值,默认为180000(过多的TIME-WAIT套接字会使Web服务器变慢)
net.ipv4.tcp_max_tw_buckets = 5000
# 用于解决TCP的SYN攻击
net.ipv4.tcp_syncookies = 1 #开启TCP时间戳,以一种比重发超时更精确的方法(请参阅 RFC 1323)来启用对 RTT 的计算;为了实现更好的性能应该启用这个选项
net.ipv4.tcp_timestamps = 1;
#决定内核在放弃连接之前所送出的 SYN+ACK 数目
net.ipv4.tcp_synack_retries = 1;
#在内核放弃建立连接之前发送SYN包的数量。
net.ipv4.tcp_syn_retries = 1; # 允许将TIME-WAIT状态的socket重新用于新的TCP连接
net.ipv4.tcp_tw_recycle = 1
# 允许将TIME-WAIT状态的socket重新用于新的TCP连接
net.ipv4.tcp_tw_reuse = 1

更新配置命令

sysctl -p

如何对Linux内核参数进行优化?的更多相关文章

  1. 转载:Linux内核参数的优化(1.3.4)《深入理解Nginx》(陶辉)

    原文:https://book.2cto.com/201304/19615.html 由于默认的Linux内核参数考虑的是最通用的场景,这明显不符合用于支持高并发访问的Web服务器的定义,所以需要修改 ...

  2. Linux内核参数基础优化

    web 服务负载均衡器常规网站服务器优化的基本配置: net.ipv4.tcp_fin_timeout =2 net.ipv4.tcp_tw_reuse =1 net.ipv4.tcp_tw_recy ...

  3. nginx Linux内核参数的优化

    默认的Linux内核参数考虑的是最通用的场景,这明显不符合用于支持高并发访问的Web服务器的定义,所以需要修改Linux内核参数,使得Nginx可以拥有更高的性能. 这里针对最通用的.使Nginx支持 ...

  4. linux 内核参数调整优化网络

    Linux系统内核设置优化tcp网络,# vi /etc/sysctl.conf,添加以下内容 net.ipv4.tcp_syncookies = 1 表示开启SYN Cookies.当出现SYN等待 ...

  5. 优化Linux内核参数/etc/sysctl.conf sysctl 《高性能Linux服务器构建实战:运维监控、性能调优与集群应用》

    优化Linux内核参数/etc/sysctl.conf  sysctl  <高性能Linux服务器构建实战:运维监控.性能调优与集群应用> http://book.51cto.com/ar ...

  6. linux 内核参数优化

    Sysctl命令及linux内核参数调整   一.Sysctl命令用来配置与显示在/proc/sys目录中的内核参数.如果想使参数长期保存,可以通过编辑/etc/sysctl.conf文件来实现.   ...

  7. linux内核参数注释与优化

    目录 1.linux内核参数注释 2.两种修改内核参数方法 3.内核优化参数生产配置 参数解释由网络上收集整理,常用优化参数对比了网上多个实际应用进行表格化整理,使查看更直观. 学习linux也有不少 ...

  8. [效果不错] nginx 高并发参数配置及linux内核参数优化,完整的内核优化设置。PHP-FPM高负载解决办法。

    背景:对vps小资源的实践中对,https://justwinit.cn/post/7536/ 的再优化,再实践,再优化,特别是Nginx,PHP,内核: 零)Nginx: error_log /da ...

  9. (转)/etc/sysctl.conf 调优 & 优化Linux内核参数

    /etc/sysctl.conf 调优 & 优化Linux内核参数 from: http://apps.hi.baidu.com/share/detail/15652067 http://ke ...

随机推荐

  1. [服务器时区问题]PHP Warning: strftime(): It is not safe to rely on the system's timezone set

    PHP Warning: strftime(): It is not safe to rely on the system's timezone set 当运行一些程序时,在httpd日志中会有如下警 ...

  2. [工具]tcping检查开放的端口

    tcping小工具是一款用于tcp监控的软件.tcping小工具可以时刻监控服务器的网络情况,包括ping值和端口状态,可以突破机房和服务器的禁用设置,是一款十分实用的网络分析小工具. 下载地址:ht ...

  3. qt ui

    /******************************************************************************** ** Form generated ...

  4. Idea创建SpringBoot项目整合Hibernate

    然后next 依赖包选择,Web必须 pom.xml: <?xml version="1.0" encoding="UTF-8"?> <pro ...

  5. 总是访问到tomcat首页解决

    部署代码后总是访问到tomcat首页解决 没有把路径写全 访问:养成带上绝对路径的习惯,否则总是访问到tomcat的首页 http://114.116.65.232:8085/ssoserver/

  6. ProbCog mlnlearn的探索

    which mlnlearn: /home/panjinbo/Desktop/MLN/probcog/Toolbox/ProbCog-1.1/apps/mlnlearn ==> /home/pa ...

  7. maven-mybatis代码生成

    1.创建测试工程 选择maven Project 点击next 填写项目名称 点击 finish 项目创建完成 2.pom.xml <project xmlns="http://mav ...

  8. Jetson TX2 不同的工作模式

    Jetson TX2 有五种工作模式,下面介绍这几种工作模式下电压.频率以及如何启动. 原理图 几种不同的工作模式 mode mode name Denver Frequency ARM Freque ...

  9. Java基础——值传递

    值传递? 参数传递的值的拷贝,改变拷贝不影响原参数. 引用传递? 参数传递的是参数本身,改变形参,实参也改变. Java中是什么传递? Java中只有值传递 实际情况为什么不对呢? 1. 基本数据类型 ...

  10. Shell中特殊字符的含义

    $0 这个程式的执行名字 $n 这个程式的第n个参数值,n=1..9 $* 这个程式的所有参数,此选项参数可超过9个. $# 这个程式的参数个数 $$ 这个程式的PID(脚本运行的当前进程ID号) $ ...