插件窝 干货文章 CentOS系统性能优化技巧,提升服务器效率

CentOS系统性能优化技巧,提升服务器效率

优化 bash sudo net 386    来源:    2025-04-02

CentOS系统性能优化技巧

系统基础优化

1. 内核参数调优

# 编辑sysctl配置文件
sudo vi /etc/sysctl.conf

# 添加或修改以下参数
vm.swappiness = 10                  # 减少swap使用
vm.dirty_ratio = 10                 # 减少脏页比例
vm.dirty_background_ratio = 5       # 后台脏页比例
net.ipv4.tcp_fin_timeout = 30       # 缩短FIN超时
net.ipv4.tcp_tw_reuse = 1           # 启用TIME-WAIT重用
net.ipv4.tcp_max_syn_backlog = 8192 # SYN队列大小
net.core.somaxconn = 32768          # 最大连接数

# 应用配置
sudo sysctl -p

2. 文件系统优化

# 查看当前挂载选项
mount | grep "^/dev"

# 在/etc/fstab中添加noatime和nodiratime选项
/dev/sda1 / ext4 defaults,noatime,nodiratime,barrier=0 1 1

# 对于SSD,可以添加discard选项启用TRIM
/dev/sdb1 /data ext4 defaults,discard 1 2

服务与进程管理

1. 禁用不必要的服务

# 查看所有服务
systemctl list-unit-files --type=service

# 禁用不必要服务示例
sudo systemctl disable postfix.service
sudo systemctl disable cups.service

2. 使用systemd限制服务资源

# 编辑服务单元文件
sudo systemctl edit nginx.service

# 添加资源限制
[Service]
MemoryLimit=512M
CPUQuota=80%

网络性能优化

1. 网络栈调优

# 添加到/etc/sysctl.conf
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
net.ipv4.tcp_congestion_control = cubic

2. 调整连接跟踪表大小

# 对于高并发服务器
echo 65536 > /proc/sys/net/netfilter/nf_conntrack_max

存储与I/O优化

1. I/O调度器选择

# 查看当前调度器
cat /sys/block/sda/queue/scheduler

# 设置为deadline或noop(SSD)
echo "deadline" > /sys/block/sda/queue/scheduler

# 永久设置
grubby --update-kernel=ALL --args="elevator=deadline"

2. 调整文件描述符限制

# 编辑/etc/security/limits.conf
* soft nofile 65535
* hard nofile 65535

# 对于特定用户
nginx soft nofile 65535
nginx hard nofile 65535

安全与性能平衡

1. SELinux优化

# 查看当前模式
getenforce

# 设置为permissive模式(测试性能影响)
sudo setenforce 0

# 永久修改
sudo vi /etc/selinux/config
SELINUX=permissive

2. 审计系统优化

# 减少审计日志量
sudo vi /etc/audit/auditd.conf
max_log_file = 50     # MB
num_logs = 4

监控与维护

1. 安装性能监控工具

sudo yum install -y htop iotop iftop sysstat

2. 定期日志轮转

sudo yum install -y logrotate
# 配置/etc/logrotate.conf和/etc/logrotate.d/下的特定服务配置

应用层优化建议

  1. Web服务器优化:

    • Nginx: 调整worker_processes和worker_connections
    • Apache: 使用event MPM替代prefork
  2. 数据库优化:

    • MySQL/MariaDB: 调整innodb_buffer_pool_size
    • PostgreSQL: 修改shared_buffers和work_mem
  3. 缓存策略:

    • 实现Redis或Memcached缓存层
    • 使用Varnish进行HTTP加速

这些优化应根据实际服务器负载和应用需求进行调整,建议在更改生产环境前先在测试环境验证效果。