centos7 系统内核、网络等优化(适用高并发)

发布时间:2020-9-22 9:57:13  浏览量:1707  【字体:大 中 小】

一、ssh连接优化

# 禁用dns解析

Port 52113              #改默认端口为52113  ,根据需求设定

# PermitRootLogin no      #禁止root用户登录,根据需求设定

PermitEmptyPasswords no  #禁止空密码登录

UseDNS no           #不使用DNS解析,可以加快访问速度

GSSAPIAuthentication no # 是一套类似Kerberos 5的通用网络安全系统接口。该接口是对各种不同的客户端服务器安全机制的封装,以消除安全接口的不同,降低编程难度。但该接口在目标机器无域名解析时会有问题

二、最大文件描述符

ulimit -SHn 65535

vim /etc/security/limits.conf      //在最后添加

# ulimit优化

* soft nofile 65536

* hard nofile 65536

三、内核优化

# vim /etc/sysctl.conf

#表示单个进程较大可以打开的句柄数

fs.file-max = 1000000

#关闭ipv6

net.ipv6.conf.all.disable_ipv6 = 1

net.ipv6.conf.default.disable_ipv6 = 1

# 避免放大攻击

net.ipv4.icmp_echo_ignore_broadcasts = 1

# 开启恶意icmp错误消息保护

net.ipv4.icmp_ignore_bogus_error_responses = 11

#决定检查过期多久邻居条目

net.ipv4.neigh.default.gc_stale_time=120

#使用arp_announce / arp_ignore解决ARP映射问题

net.ipv4.conf.default.arp_announce = 2

net.ipv4.conf.all.arp_announce=2

net.ipv4.conf.lo.arp_announce=2 # 避免放大攻击

net.ipv4.icmp_echo_ignore_broadcasts = 1 # 开启恶意icmp错误消息保护

net.ipv4.icmp_ignore_bogus_error_responses = 1

#处理无源路由的包

net.ipv4.conf.all.accept_source_route = 0

net.ipv4.conf.default.accept_source_route = 0

#core文件名中添加pid作为扩展名

kernel.core_uses_pid = 1

#修改消息队列长度

kernel.msgmnb = 65536

kernel.msgmax = 65536

#开启反向路径过滤

net.ipv4.conf.all.rp_filter = 1

net.ipv4.conf.default.rp_filter = 1

#设置最大内存共享段大小bytes

kernel.shmmax = 68719476736

kernel.shmall = 4294967296

#表示操作系统允许TIME_WAIT套接字数量的较大值,如超过此值,TIME_WAIT套接字将立刻被清除并打印警告信息,默认为180000,过多的TIME_WAIT套接字会使Web服务器变慢

net.ipv4.tcp_max_tw_buckets = 6000

net.ipv4.tcp_sack = 1

net.ipv4.tcp_window_scaling = 1

#定义了TCP接受缓存的最小值、默认值、较大值

net.ipv4.tcp_rmem = 4096 87380 4194304

#定义TCP发送缓存的最小值、默认值、较大值

net.ipv4.tcp_wmem = 4096 16384 4194304

#表示内核套接字发送缓存区默认大小

net.core.wmem_default = 8388608

#表示内核套接字接受缓存区默认大小

net.core.rmem_default = 8388608

#表示内核套接字接受缓存区较大大小

net.core.rmem_max = 16777216

#表示内核套接字发送缓存区较大大小

net.core.wmem_max = 16777216

#每个网络接口接收数据包的速率比内核处理这些包的速率快时,会有一个列队保存这些数据包,允许送到队列的数据包的最大值。

net.core.netdev_max_backlog = 32768

#web应用中listen函数的backlog默认会给我们内核参数的net.core.somaxconn限制到128,而nginx定义的NGX_LISTEN_BACKLOG默认为511,所以有必要调整这个值。这个参数用于调节系统同时发起的TCP连接数,在高并发的请求中,默认的值可能会导致链接超时或者重传,因此需要结合高并发请求数来调节此值。

net.core.somaxconn = 32768

#选项用于设定系统中最多有多少个TCP套接字不被关联到任何一个用户文件句柄上。如果超过这个数字,孤立链接将立即被复位并输出警告信息。这个限制指示为了防止简单的DOS攻击,不用过分依靠这个限制甚至认为的减小这个值,更多的情况是增加这个值

net.ipv4.tcp_max_orphans = 3276800

#未收到客户端确认信息的连接请求的最大值

#这个参数表示TCP三次握手建立阶段接受SYN请求列队的较大长度,默认1024,将其设置的大一些可使出现Nginx繁忙来不及accept新连接时,Linux不至于丢失客户端发起的链接请求

net.ipv4.tcp_max_syn_backlog = 262144

net.ipv4.tcp_timestamps = 0

#内核放弃建立连接之前发送SYNACK 包的数量

net.ipv4.tcp_synack_retries = 1

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

net.ipv4.tcp_syn_retries = 1

#启用timewait 快速回收

net.ipv4.tcp_tw_recycle = 1

#开启重用。允许将TIME-WAIT sockets 重新用于新的TCP 连接,#参数设置为 1 ,表示允许将TIME_WAIT状态的socket重新用于新的TCP链接,这对于服务器来说意义重大,因为总有大量TIME_WAIT状态的链接存在

net.ipv4.tcp_tw_reuse = 1

net.ipv4.tcp_mem = 94500000 915000000 927000000

#当服务器主动关闭链接时,socket保持在FIN_WAIT_2状态的较大时间

net.ipv4.tcp_fin_timeout = 1

# 开启SYN洪水攻击保护(防范少量SYN攻击)

net.ipv4.tcp_syncookies = 1

#允许系统打开的端口范围,定义UDP和TCP链接的本地端口的取值范围

net.ipv4.ip_local_port_range = 1024    65000

#当keepalive启动时,TCP发送keepalive消息的频度;默认是2小时,将其设置为10分钟,可更快的清理无效链接

net.ipv4.tcp_keepalive_time = 600

#縮短established的超時時間,####如果可能的话,建议关闭nf_conntrack,设置NOTRACK或者调大数值。

#net.netfilter.nf_conntrack_tcp_timeout_established = 180

#CONNTRACK_MAX 允许的最大跟踪连接条目,是在内核内存中netfilter可以同时处理的“任务”

#net.netfilter.nf_conntrack_max = 1048576

#net.nf_conntrack_max = 1048576

linux7内核优化,centos7 系统内核、网络等优化(适用高并发)相关推荐

  1. 爱奇艺网络协程编写高并发应用实践

    作者 | 爱奇艺技术产品团队 责编 | 屠敏 出品 | CSDN 博客 本⽂以爱奇艺开源的网络协程库(https://github.com/iqiyi/libfiber )为例,讲解网络协程的设计原理 ...

  2. 【Linux网络编程部分----多进程高并发poll模型】

    目录 前言 背景 分析 编写步骤 服务器: 客户端: 服务器端代码 附:文件操作部分 附:目录操作部分 客户端代码 全部代码 头文件部分 服务器全部代码 客户端所有代码 总结: 前言 本文采用  Vi ...

  3. m基于ABC人工蜂群优化的无线传感器网络路由优化算法matlab仿真,对比优化前后网络寿命,效率以及可靠性

    目录 1.算法仿真效果 2.算法涉及理论知识概要 3.MATLAB核心程序 4.完整算法代码文件 1.算法仿真效果 matlab2022a仿真结果如下: 2.算法涉及理论知识概要 无线传感器网络通常使 ...

  4. 网络基础+Socket编程+高并发服务器

    网络编程 P1 复习 Linux 网络编程 P2 信号量生产者复习 P3 协议 P4 七层模型和四层模型及代表协议 P5 网络传输数据封装流程 P6 以太网帧和ARP请求 P7 IP 协议 P8 TC ...

  5. Android 网络性能优化(4)弱网优化

    系列文章目录 1. Android 网络性能优化(1)概述 2. Android 网络性能优化(2)DNS优化 3. Android 网络性能优化(3)复用连接池 4. Android 网络性能优化( ...

  6. CDMA网络RF优化方法

             摘要:本文介绍了CDMA网络RF优化的指标,优化所需的工具,优化流程,优化的实现方法以及对导频污染的处理.对优化中的一些典型问题的处理方法进行了综合,对子CDMA网络RF优化的工程技 ...

  7. php 优化 系统参数,Linux服务器系统参数优化

    在服务器安装了LNMP(Linux+Nginx+Mysql+php)环境之后Linux服务器参数必须做必要的优化,包括网络参数优化.文件数优化.内存优化等等. 1.网络参数优化: 这部分主要参照张宴大 ...

  8. Linux性能优化实战: 套路篇-优化性能问题的一般方法(56)

    一.上节回顾 上一节,我带你一起梳理了,性能问题分析的一般步骤.先带你简单回顾一下. 我们可以从系统资源瓶颈和应用程序瓶颈,这两个角度来分析性能问题的根源. 从系统资源瓶颈的角度来说,USE 法是最为 ...

  9. MySQL在大数据、高并发场景下的SQL语句优化

    转载自:https://segmentfault.com/a/1190000007311574 本文主要针对中小型应用或网站,重点探讨日常程序开发中SQL语句的优化问题,所谓"大数据&quo ...

最新文章

  1. mysql 设置表的大小_mysql InnoDB建表时设定初始大小的方法
  2. FD.io/VPP — VNF 应用场景
  3. JavaScript函数练习
  4. 在cmd指令看计算机位数,在.cmd中使用Windows命令来测试32位或64位并运行命令
  5. web安全_暴力破解
  6. 根可达算法的根_我的JVM(六):GC的基础概念以及GC算法
  7. Hadoop MapReduce编程 API入门系列之压缩和计数器(三十)
  8. 力扣106. 从中序与后序遍历序列构造二叉树(JavaScript)
  9. python数据结构之集合(set)——超详细
  10. aix mysql日志,一次AIX 操作系统ASM添加磁盘的操作日志
  11. charles抓包显示乱码解决方法
  12. Java 创建线程的三种方法比较
  13. dimp是什么意思_单目标追踪论文阅读系列(八)——《DIMP(ICCV2019)》
  14. python librosa库实现变声
  15. php网页qq客服代码,qq客服代码,网页QQ在线客服代码
  16. (干货,建议收藏)备战2021年软考中级网络工程师-01计算机硬件基础
  17. html添加省市县联动下拉框,JS实现省市县三级下拉联动
  18. 算法:5、绝对差值和
  19. 视频教程-微信公众平台开发入门-微信开发
  20. 为什么要学数学、语文?还有英语!

热门文章

  1. 普适方案|资管新规落地,资管领域存量市场竞争激烈。专家:得转型(附产品推广)
  2. 分享一下我为什么可以获得ssp
  3. 使用直方图处理进行颜色校正
  4. Python图像处理介绍--彩色图像的直方图处理
  5. 智能合约开发环境搭建及Hello World合约
  6. 删除windows7的隐藏分区
  7. 据廖雪峰python3教程----python学习第二天
  8. 《连线》杂志:2015年六大安全威胁预测
  9. Asp.net 身份验证、授权概述
  10. cc arm linux gcc,(80分请教):armcc 与 arm-elf-gcc的区别?