Linux 内核优化实战(sysctl.conf 和 ulimits )

本文介绍了Linux系统内核参数优化,重点讲解了如何通过sysctl.conf进行配置,并提供了优化示例。同时,讨论了ulimits的优化,特别是调整打开文件的最大数量,确保设置生效的方法。通过编辑limits.conf文件并重启进程,可以实现优化目标。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、sysctl.conf优化

Linux系统内核参数的配置文件为 /etc/sysctl.conf 和 /etc/sysctl.d/ 目录。其读取顺序为:

/etc/sysctl.d/ 下面的文件按照字母排序;然后读取 /etc/sysctl.conf 。

 

一般所有对系统的修改参数放在 /etc/sysctl.d/ 目录,系统原有的 sysctl.conf 文件保存一些更加基础的配置。

sysctl.conf 可优化参数如下:

# 系统所有进程一共可以打开的文件数量
fs.file-max = 2097152


# 减少交换内存使用,默认60,建议10-30
vm.swappiness = 30


# 脏数据的比例和处理,根据场景不同设置,
# 参考 https://lonesysadmin.net/2013/12/22/better-linux-disk-caching-performance-vm-dirty_ratio/
# 如果是数据库服务器,希望数据能够尽快安全写入,可降低内存缓存比例
# vm.dirty_background_ratio = 5
# vm.dirty_ratio = 10


# 如果是业务服务器,对数据安全写入无要求,可加大内存缓存比例
# vm.dirty_background_ratio = 50
# vm.dirty_ratio = 80


# 设置为1,内核允许分配所有的物理内存,Redis常用
vm.overcommit_memory = 1


# 系统拥有的内存数,ElasticSearch启动必备
vm.max_map_count = 262144


# 设置为1
net.ipv4.tcp_no_metrics_save = 1


# 禁用 sysrq 功能
kernel.sysrq = 0


# 控制 core 文件的文件名中是否添加 pid 作为扩展
kernel.core_uses_pid = 1


# 设置为1,防止 SYNC FLOOD 攻击
net.ipv4.tcp_syncookies = 1


# 消息队列的最大消息大小,默认8
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值