`

linux 常用优化

 
阅读更多
#查看可优化的网络参数
find /proc/sys/net/ipv4/ -type f 
 
#Ip转发(默认为0,表示关闭,1为开启)
net.ipv4.ip_forward = 0                       
 
net.ipv4.conf.default.rp_filter = 1       
 
net.ipv4.conf.default.accept_source_route = 0
 
#该参数表示文件句柄的最大数量。
fs.file-max = 65535
 
#允许系统打开的端口范围
net.ipv4.ip_local_port_range = 1024   65000   
 
#默认socket读buffer
net.core.rmem_default=262144               
 
#默认socket写buffer
net.core.wmem_default=262144              
 
#最大socket写buffer,可参考的优化值:873200
net.core.rmem_max=262144                 
 
#最大socket写buffer,可参考的优化值:873200
net.core.wmem_max=262144                
 
#表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭
net.ipv4.tcp_tw_reuse = 1
 
#表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭。
net.ipv4.tcp_tw_recycle = 1                
 
#当keepalive起用的时候,TCP发送keepalive消息的频度。缺省是2小时
net.ipv4.tcp_keepalive_time = 30          
 
net.ipv4.tcp_max_tw_buckets = 6000           
 
#记录的那些尚未收到客户端确认信息的连接请求的最大值
net.ipv4.tcp_max_syn_backlog = 65536      
 
#每个网络接口接收数据包的速率比内核处理这些包的速率快时允许送到队列的数据包的最大数目。
web应用中listen函数backlog默认会给我们内核参数的net.core.somaxconn限制到128,而nginx定义的NGX_LISTEN_BACKLOG默认为511,所以有必要调整这个值
net.core.netdev_max_backlog = 3000
net.core.somaxconn = 32768              
 
#时间戳可以避免序列号的卷绕。一个1Gbps的链路肯定会遇到以前用过的序列号。时间戳能够让内核接受这种“异常”的数据包。这里需要将其关掉
net.ipv4.tcp_timestsmps = 0    
 
#为了打开对端的连接,内核需要发送一个SYN并附带一个回应前面一个SYN的ACK。也就是所谓三次握手中的第二次握手。这个设置决定了内核放弃连接之前发送SYN+ACK包的数量
net.ipv4.tcp_synack_retries = 2
 
#在内核放弃建立连接之前发送SYN包的数量
net.ipv4.tcp_syn_retries = 2   
 
#开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接。
#net.ipv4.tcp_tw_len = 1
net.ipv4.tcp_tw_reuse = 1      
 
#TCP写buffer,可参考的优化值: 8192 436600 873200
net.ipv4.tcp_wmem = 8192 436600 873200      
 
#TCP读buffer,可参考的优化值: 32768 436600 873200
net.ipv4.tcp_rmem = 32768 436600 873200  
 
#内存单位是页,而不是字节.可参考的优化值是:786432 1048576 1572864  1:低于此值,TCP没有内存压力. 2:在此值下,进入内存压力阶段. 3:高于此值,TCP拒绝分配socket.
net.ipv4.tcp_mem = 94500000 91500000 92700000
 
#系统中最多有多少个TCP套接字不被关联到任何一个用户文件句柄上
net.ipv4.tcp_max_orphans = 3276800
 
 
 
 
#查看内核参数
cat /etc/sysctl.conf |grep -v -e "^#" -e "^$"
kernel.sysrq = 0
 
#默认核使用的PID号
kernel.core_uses_pid = 1                   
 
#开启SYN Cookies。当出现SYN等待队列溢出时,开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理可防范少量SYN攻击,默认为0,表示关闭;
net.ipv4.tcp_syncookies = 1                 
 
#每个消息队列的最大字节限制。                             
kernel.msgmnb = 65536                   
# 整个系统的最大数量的消息队列。
kernel.msgmax = 65536                  
 
#共享内存段最大字节数,建议设大点,甚至可以大过物理内存的字节数该参数定义了共享内存段的最大尺寸(以字节为单位)。缺省为32M,对于oracle来说,该缺省值太低,通常将其设置为2G。
kernel.shmmax = 68719476736
 
#分配的共享内存数量的系统级限制。在某些系统上,SHMALL可能表示成页数量,而不是字节数量。
kernel.shmall = 4294967296  
 
 
修改后不用重启动更新:/sbin/sysctl -p
 
共享内存段的最小字节数这个内核参数用于设置系统范围内共享内存段的最大数量。该参数的默认值是 4096 。通常不需要更改。
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128

 

分享到:
评论

相关推荐

    Linux性能优化大师

    , 《Linux性能优化大师》首先对Linux 操作系统进行了深入剖析,并对最常用的企业监控工具Benchmark 及其他监控工具进行了详细的介绍,此外分析了系统中识别和分析瓶颈的过程,最后阐述如何使用性能衡量工具,以及...

    Linux性能优化-内存篇_WEL.pdf

    top命令是一个常用的性能优化工具,可以实时显示系统的CPU、内存、进程等信息。 3.2 vmstat命令 vmstat命令可以显示系统的虚拟内存、交换空间、磁盘I/O等信息。 3.3 free命令 free命令可以显示系统的物理内存、...

    Linux性能优化大师.epub

    《Linux性能优化大师》首先对Linux 操作系统进行了深入剖析,并对最常用的企业监控工具Benchmark 及其他监控工具进行了详细的介绍,此外分析了系统中识别和分析瓶颈的过程,最后阐述如何使用性能衡量工具,以及如何...

    linux常用c函数中文版

    本资源“linux常用c函数中文版”提供了一套详细的C语言函数库,特别针对Linux环境进行了优化和注解,帮助开发者更好地理解和使用这些函数。下面我们将深入探讨一些常见的Linux C函数以及它们在编程中的应用。 1. **...

    linux常用命令(适合新手)

    LILO(Linux Loader)是早期常用的Linux引导装载程序,虽然现在多被GRUB取代,但了解其配置对于理解引导过程仍然有价值。学习如何设置LILO以正确引导Linux内核。 5. **Linux RPM命令**: RPM(Red Hat Package ...

    Linux常用软件

    Linux常用软件涵盖了各种用途,如编程、系统管理、文本编辑、版本控制等。这里我们将深入探讨标题和描述中提到的两个关键工具:cmake和arm-linux-gcc。 **1. CMake** CMake是一个跨平台的开源构建系统,它允许用户...

    linux常用命令 lvm

    在Linux环境中,LVM具有诸多优势,如易于管理、容错能力、性能优化等。 1. LVM的基本概念: - 物理卷(Physical Volume, PV):这是LVM的基础,可以是实际的硬盘分区或整个硬盘。 - 卷组(Volume Group, VG):由...

    linux的系统优化

    【Linux系统的优化】主要包括对操作系统内核、磁盘管理、内存使用、性能监控以及安全配置等方面的调整,以提升系统的稳定性和效率。以下是一些关键的知识点: 1. **内核版本识别**: `uname -a` 命令用于显示系统...

    linux常用开发工具

    在Linux操作系统中,开发者有一系列常用的工具来辅助他们的开发工作,包括编译系统、调试工具以及程序维护工具等。本文将详细介绍其中的关键工具——gcc编译系统、gdb程序调试工具以及make程序维护工具。 首先,让...

    Linux性能优化大师.pdf

    本书首先对 Linux 操作系统进行了深入剖析,并对最常用的企业监控工具Benchmark 及其他监控工具进行了详细的介绍,此外分析了系统中识别和分析瓶颈的过程,最后阐述如何使用性能衡量工具,以及如何对系统4 大子系统...

    linux常用命令,嵌入式linux使用入门笔记,linux入门

    本资源提供了两份宝贵的文献,旨在帮助初学者快速掌握Linux常用命令并了解嵌入式Linux的使用基础。 首先,"Linux常用命令全集.CHM"这份文档详细列举了Linux操作系统中的各种命令。Linux命令行是其强大的工作台,它...

    linux 常用压测命令

    Linux 常用压测命令 Linux 系统中,性能优化是一个非常重要的方面,了解系统的运行状况是优化的前提。常用的压测命令可以帮助我们了解系统的运行状况,从而进行相应的优化配置。下面将详细介绍这些命令的使用方法...

    Linux常用服务安装脚本、系统优化脚本_script.zip

    Linux常用服务安装脚本、系统优化脚本_script

Global site tag (gtag.js) - Google Analytics