Linux内核高性能优化「建议收藏」

Linux内核高性能优化「建议收藏」# 打开TIME-WAIT套接字重用功能,对于存在大量连接的Web服务器非常有效。 # 减少处于FIN-WAIT-2连接状态的时间,使系统可以处理更多的连接。 # 减少TCP KeepAlive连接侦测的时间,使系统可以处理更多的连接。 # 如果某个TCP连接在idle 300…

Linux内核高性能优化

图片

image.png

#—内核优化开始——–

# 内核panic时,1秒后自动重启

kernel.panic = 1

# 允许更多的PIDs (减少滚动翻转问题); may break some programs 32768

kernel.pid_max = 32768

# 内核所允许的最大共享内存段的大小(bytes)

kernel.shmmax = 4294967296

# 在任何给定时刻,系统上可以使用的共享内存的总量(pages)

kernel.shmall = 1073741824

# 设定程序core时生成的文件名格式

kernel.core_pattern = core_%e

# 当发生oom时,自动转换为panic

vm.panic_on_oom = 1

# 表示强制Linux VM最低保留多少空闲内存(Kbytes)

vm.min_free_kbytes = 1048576

# 该值高于100,则将导致内核倾向于回收directory和inode cache

vm.vfs_cache_pressure = 250

# 表示系统进行交换行为的程度,数值(0-100)越高,越可能发生磁盘交换

vm.swappiness = 20

# 仅用10%做为系统cache

vm.dirty_ratio = 10

# 增加系统文件描述符限制 2^20-1

fs.file-max = 1048575

# 网络层优化

# listen()的默认参数,挂起请求的最大数量,默认128

net.core.somaxconn = 1024

# 增加Linux自动调整TCP缓冲区限制

net.core.wmem\_default = 8388608
net.core.rmem\_default = 8388608
net.core.rmem\_max = 16777216
net.core.wmem\_max = 16777216

# 进入包的最大设备队列.默认是300

net.core.netdev_max_backlog = 2000

# 开启SYN洪水攻击保护

net.ipv4.tcp_syncookies = 1

# 开启并记录欺骗,源路由和重定向包

net.ipv4.conf.all.log\_martians = 1
net.ipv4.conf.default.log\_martians = 1

# 处理无源路由的包

net.ipv4.conf.all.accept\_source\_route = 0
net.ipv4.conf.default.accept\_source\_route = 0

# 开启反向路径过滤

net.ipv4.conf.all.rp\_filter = 1
net.ipv4.conf.default.rp\_filter = 1

# 确保无人能修改路由表

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

# 增加系统IP端口限制

net.ipv4.ip_local_port_range = 9000 65533

# TTL

net.ipv4.ip_default_ttl = 64

# 增加TCP最大缓冲区大小

net.ipv4.tcp\_rmem = 4096 87380 8388608
net.ipv4.tcp\_wmem = 4096 32768 8388608

# Tcp自动窗口

net.ipv4.tcp_window_scaling = 1

# 进入SYN包的最大请求队列.默认1024

net.ipv4.tcp_max_syn_backlog = 8192

# 打开TIME-WAIT套接字重用功能,对于存在大量连接的Web服务器非常有效。 

net.ipv4.tcp\_tw\_recycle = 1 
net.ipv4.tcp\_tw\_reuse = 0  

# 表示是否启用以一种比超时重发更精确的方法(请参阅 RFC 1323)来启用对 RTT 的计算;为了实现更好的性能应该启用这个选项

net.ipv4.tcp_timestamps = 0

# 表示本机向外发起TCP SYN连接超时重传的次数

net.ipv4.tcp\_syn\_retries = 2
net.ipv4.tcp\_synack\_retries = 2

# 减少处于FIN-WAIT-2连接状态的时间,使系统可以处理更多的连接。 

net.ipv4.tcp_fin_timeout = 10 

# 减少TCP KeepAlive连接侦测的时间,使系统可以处理更多的连接。 

# 如果某个TCP连接在idle 300秒后,内核才发起probe.如果probe 2次(每次2秒)不成功,内核才彻底放弃,认为该连接已失效.

net.ipv4.tcp\_keepalive\_time = 300 
net.ipv4.tcp\_keepalive\_probes = 2
net.ipv4.tcp\_keepalive\_intvl = 2

# 系统所能处理不属于任何进程的TCP sockets最大数量

net.ipv4.tcp_max_orphans = 262144

# 系统同时保持TIME_WAIT套接字的最大数量,如果超过这个数字,TIME_WAIT套接字将立刻被清除并打印警告信息。

net.ipv4.tcp_max_tw_buckets = 20000 

# arp_table的缓存限制优化

net.ipv4.neigh.default.gc\_thresh1 = 128
net.ipv4.neigh.default.gc\_thresh2 = 512
net.ipv4.neigh.default.gc\_thresh3 = 4096

#——内核优化结束——–

图片

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/12919.html

(0)

相关推荐

  • 以10为底的对数计算器——快速求出任何数的以10为底的对数!

    以10为底的对数计算器——快速求出任何数的以10为底的对数!以10为底的对数计算器是一种可以快速计算任何数的以10为底的对数的工具。以10为底的对数是数学中非常常见的一种对数,通常简写为lg或log10。在某些学科领域中,如物理学、化学和工程学等,在对数方面的应用非常广泛。

    2024-01-08
    239
  • python动态语言的体现_掌握一门语言的时间

    python动态语言的体现_掌握一门语言的时间动态编程语言 是 高级程序设计语言 的一个类别,在计算机科学领域已被广泛应用。它是一类 在运行时可以改变其结构的语言 :例如新的函数、对象、甚至代码可以被引进,已有的函数可以被删除或是其他结构上的变化。动态语言目前非常具有活力。例如JavaScript便是一个动态语言,除此之外…

    2023-07-30
    81
  • dnf邮寄和拍卖交易手续费_dnf拍卖行卡死了

    dnf邮寄和拍卖交易手续费_dnf拍卖行卡死了DNF从60版本时期开始,迅速集结了一大批忠实玩家,阿拉德大陆300万勇士,此类梗一直延续到如今还被当做谈资。

    2023-06-28
    93
  • Redis简介与部署 – Linux[通俗易懂]

    Redis简介与部署 – Linux[通俗易懂]一、简介 Redis是什么?redis是一款基于BSD协议,开源的非关系型数据库(nosql数据库),作者是意大利开发者Salvatore Sanfilippo在2009年发布,使用C语言编写;red

    2023-03-27
    102
  • 使用Python实现字符串分割功能

    使用Python实现字符串分割功能Python中内置的字符串处理函数split,可以非常方便地实现字符串分割。split函数会按照指定的分隔符对字符串进行分割,并返回一个列表。

    2024-01-03
    63
  • 提高Python程序效率:time of sleep优化技巧

    提高Python程序效率:time of sleep优化技巧Python是一个高效的编程语言,但是在编写程序时,很多时候会涉及到时间延迟的问题。在Python中,我们可以使用time模块中的sleep函数来实现程序的延时效果。然而,如果使用不当,这种延时机制会降低程序的效率,影响用户的使用体验。在本文中,我们将介绍一些优化time of sleep机制的技巧,以便提高Python程序的效率。

    2024-01-31
    48
  • 语法形式有哪些_是…的语法

    语法形式有哪些_是…的语法前记 (可跳过这段来自本up的罗里吧嗦。。。) 在做上一个项目的时候,需要用到本地数据库,以前做公司项目用的是轻量级数据库Realm,做自己小项目用的是greenDAO,大学学的是SQL server

    2023-06-06
    93
  • redis速度慢_数据库性能慢了

    redis速度慢_数据库性能慢了本篇为Redis性能问题诊断系列的第四篇,也是最后一篇,主要从应用程序、系统、服务器硬件及网络系统等层面上进行讲解,重点分享了哪些配置需要重点关注和调整优化,才能最大程度的发挥Redis的处理能力;

    2023-06-06
    101

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注