#sysctl -p

参数:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.icmp_ignore_bogus_error_responses = 1
net.ipv4.ip_forward = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
net.ipv4.tcp_max_tw_buckets = 6000
net.ipv4.tcp_sack = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_rmem = 4096 87380 4194304
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 = 262144
net.ipv4.tcp_max_orphans = 3276800
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_fin_timeout = 1
net.ipv4.tcp_keepalive_time = 30
net.ipv4.ip_local_port_range = 1024 65000
fs.file-max = 265535
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv4.conf.all.secure_redirects = 0
net.ipv4.conf.default.secure_redirects = 0
vm.swappiness = 10

vim /etc/sysctl.conf

# sysctl settings are defined through files in
# /usr/lib/sysctl.d/, /run/sysctl.d/, and /etc/sysctl.d/.
#
# Vendors settings live in /usr/lib/sysctl.d/.
# To override a whole file, create a new file with the same in
# /etc/sysctl.d/ and put new settings there. To override
# only specific settings, add a file with a lexically later
# name in /etc/sysctl.d/ and put new settings there.
#
# For more information, see sysctl.conf(5) and sysctl.d(5).
#
#系统优化参数
#
##关闭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 = 1
#
##关闭路由转发
#
net.ipv4.ip_forward = 0
#
net.ipv4.conf.all.send_redirects = 0
#
net.ipv4.conf.default.send_redirects = 0
#
##开启反向路径过滤
#
net.ipv4.conf.all.rp_filter = 1
#
net.ipv4.conf.default.rp_filter = 1
#
##处理无源路由的包
#
net.ipv4.conf.all.accept_source_route = 0
#
net.ipv4.conf.default.accept_source_route = 0
#
##关闭sysrq功能
#
kernel.sysrq = 0
#
##core文件名中添加pid作为扩展名
#
kernel.core_uses_pid = 1
#
## 开启SYN洪水攻击保护
#
net.ipv4.tcp_syncookies = 1
#
##修改消息队列长度
#
kernel.msgmnb = 65536
#
kernel.msgmax = 65536
#
##设置最大内存共享段大小bytes
#
kernel.shmmax = 68719476736
#
kernel.shmall = 4294967296
#
##timewait的数量,默认180000
#
net.ipv4.tcp_max_tw_buckets = 6000
#
net.ipv4.tcp_sack = 1
#
net.ipv4.tcp_window_scaling = 1
#
net.ipv4.tcp_rmem = 4096 87380 4194304
#
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 = 262144
#
##限制仅仅是为了防止简单的DoS 攻击
#
net.ipv4.tcp_max_orphans = 3276800
#
##未收到客户端确认信息的连接请求的最大值
#
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
#

##tcp_tw_recycle 的机制是维护时间戳,发现时间戳后退的包直接丢掉,会导致服务器可能会丢失 NAT 模式下运行的客户端连接

##开启重用。允许将TIME-WAIT sockets 重新用于新的TCP 连接
#
net.ipv4.tcp_tw_reuse = 1
#
net.ipv4.tcp_mem = 94500000 915000000 927000000
#
net.ipv4.tcp_fin_timeout = 1
#
##当keepalive 起用的时候,TCP 发送keepalive 消息的频度。缺省是2 小时
#
net.ipv4.tcp_keepalive_time = 30
#
##允许系统打开的端口范围
#
net.ipv4.ip_local_port_range = 1024 65000
#
##修改防火墙表大小,默认65536
#
#ulimit -n 265535
#可在/etc/profile中设置
fs.file-max = 265535
#系统级别的能够打开的文件句柄的数量,ulimit 是进程级别的

#net.netfilter.nf_conntrack_max=655350
#
##net.netfilter.nf_conntrack_tcp_timeout_established=1200
#
# # 确保无人能修改路由表
#
net.ipv4.conf.all.accept_redirects = 0
#
net.ipv4.conf.default.accept_redirects = 0
#
net.ipv4.conf.all.secure_redirects = 0
#
net.ipv4.conf.default.secure_redirects = 0
#
#net.nf_conntrack_max = 6553600
vm.swappiness = 10

注:

kernel.shmmax = 68719476736(页)

Shmmax 是核心参数中最重要的参数之一,用于定义单个共享内存段的最大值,shmmax 设置应该足够大,能在一个共享内存段下容纳下整个的SGA ,设置的过低可能会导致需要创建多个共享内存段,默认设置已经足够大
kernel.shmall = 4294967296(页)

控制共享内存页数,Linux 共享内存页大小为4KB, 共享内存段的大小都是共享内存页大小的整数倍。假设共享内存段的最大大小是16G,那么需要共享内存页数是 16GB/4KB=16777216KB/4KB=4194304页才符合。默认设置已经足够大

kernel.shmall

#共享内存段的最大数量,shmmni 缺省值 4096 ,一般肯定是够用了

vm.swappiness 值的范围为0~100,假设内存为16G,那么vm.swappiness设置为60,那么可用内存16*0.4=6.4的时候开始物理内存与虚拟内存的交换,势必会影响性能

centos7内核优化的更多相关文章

  1. CentOS7 内核优化 修改参数

    一:内核简介 内核是操作系统最基本的部分.它是为众多应用程序提供对计算机硬件的安全访问的一部分软件,这种访问是有限的,并且内核决定一个程序在什么时候对某部分硬件操作多长时间. 内核的分类可分为单内核和 ...

  2. CentOS7的内核优化

    修改内核配置文件 vim /etc/sysctl.conf 刷新配置文件 sysctl -p 关ipv6 net.ipv6.conf.all.disable_ipv6 = net.ipv6.conf. ...

  3. 通用Linux内核优化配置

    通用Linux内核优化配置 针对CentOS6.CentOS7.Redhat6.Redhat7等系统 net.ipv4.ip_forward = net.ipv4.conf. net.ipv4.con ...

  4. centos7内核升级及curl访问https证书过期处理

    centos7内核升级及curl访问https证书过期处理 先看下当前系统的linux内核版本 uname -r 3.10.0-229.el7.x86_64 升级步骤 1.rpm --import h ...

  5. Tomcat调优总结(Tomcat自身优化、Linux内核优化、JVM优化)

    Tomcat自身的调优是针对conf/server.xml中的几个参数的调优设置.首先是对这几个参数的含义要有深刻而清楚的理解.以tomcat8.5为例,讲解参数. 同时也得认识到一点,tomcat调 ...

  6. Linux内核优化(未注释)

    Nginx代理服务内核优化 # Kernel sysctl configuration file for Red Hat Linux # # For binary values, 0 is disab ...

  7. (转)Nginx配置和内核优化 实现突破十万并发

    nginx指令中的优化(配置文件) worker_processes 8; nginx进程数,建议按照cpu数目来指定,一般为它的倍数. worker_cpu_affinity 00000001 00 ...

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

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

  9. Nginx优化指南+LINUX内核优化+linux连接数优化+nginx连接数优化

    Most setup guides for Nginx tell you the basics - apt-get a package, modify a few lines here and the ...

随机推荐

  1. perl 处理特殊字符

    如果大家想使用perl 来处理一些特殊字符,例如"del"这种字符,就需要使用到chr() 函数了 例如大家如果向一个文本中写入以下内容 aaaa0x1270x1bccccc 这时 ...

  2. react native 获取地图需要的SHA1

    1.从电脑的根目录进入.android文件 2.进入.android文件后输入 keytool -v -list -keystore debug.keystore 3.回车输入密码,(可以直接回车不用 ...

  3. #10:wannanewtry——6

    HDU3401,列完转移方程拆分一下,正着.反着跑优先队列优化代表买或卖.初始化不大会搞…… #include <bits/stdc++.h> using namespace std; c ...

  4. Mass Change Queries Codeforces - 911G

    https://codeforces.com/contest/911/problem/G 没想到线段树合并还能这么搞.. 对每个权值建一个线段树(动态开点),如果权值为k的线段树上第i位为1,那么表示 ...

  5. node项目 Error: Cannot find module 'mongoose'

    这是因为你部署的项目没有添加mongoose,使用 在自己项目的根目录下:npm install mongoose --save

  6. Ionic之$scope 依赖注入报错

    在开发Ionic过程中,发现会报在 LoginController 中引用locals报错,具体报错问题: ionic.bundle.js:19526 Error: [$injector:unpr] ...

  7. AmazeUI 保存浏览器数据 永久性

    //保存永久缓存数据function SaveAmuiStore(ItemName, ItemData){ if (window.localStorage) { var store = $.AMUI. ...

  8. vue cli 脚手架上多页面开发 支持webpack2.x

    A yuri demo for webpack2 vue multiple page.我看到有一些项目多页面项目是基于webapck1.0的,我这个是在webpack2.x上布置修改.  项目地址:  ...

  9. [问题记录]Ubuntu下chmsee安装失败的解决

    日期:2016年2月26日 一直在找Ubuntu下查看chm的工具但是普遍不理想,发现在deepin中的chmsee相对比较好,但是直接执行网上的sudo apt-get install chmsee ...

  10. js对象引用赋值后

    a={f:1} b={} b.a=a console.log(b.a) a.b=2 console.log(b.a) a={f:1} b={} b.a=a console.log(b.a) a={b: ...