1. 硬件升级:提升基础性能瓶颈
2. 选择合适的文件系统:匹配工作负载需求
tune2fs
工具调整参数(如启用extents
功能提升大文件性能)。3. 调整文件系统挂载选项:减少不必要的开销
/etc/fstab
中添加以下挂载选项: noatime
:禁用文件访问时间更新,减少磁盘写入次数(对只读或很少修改的文件效果显著)。nodiratime
:禁用目录访问时间更新,进一步降低元数据操作开销。UUID=your-uuid / ext4 defaults,noatime,nodiratime 0 1
。4. 优化内核参数:调整系统资源分配
noop
(无调度)或deadline
(低延迟),减少调度开销。deadline
或cfq
(完全公平队列),优化顺序读写性能。echo noop > /sys/block/sda/queue/scheduler
(需root权限)。/etc/sysctl.conf
调整以下参数并执行sysctl -p
使生效: vm.swappiness=10
:降低交换空间使用频率(值越低,越倾向于使用物理内存)。vm.dirty_ratio=10
:当脏页(未写入磁盘的内存数据)占系统内存10%时,触发后台写入。vm.dirty_background_ratio=5
:当脏页占5%时,启动后台写入进程,平衡性能与数据安全性。5. 定期维护文件系统:保持最佳状态
e4defrag
工具整理碎片(需卸载文件系统或在线整理),命令示例:e4defrag /dev/sda1
。xfs_fsr
工具优化。fsck
工具检查并修复文件系统错误(需从Live CD/USB启动,避免挂载状态下操作)。apt autoremove
删除不再需要的软件包,apt clean
清理APT缓存,journalctl --vacuum-time=2weeks
清理两周前的日志文件,释放磁盘空间。6. 监控与分析性能:定位瓶颈
iostat
(来自sysstat包)监控磁盘的读写速率、I/O等待时间等指标,识别慢设备。iotop
(实时监控)查看哪些进程占用大量I/O资源,优化或终止异常进程。vmstat
监控系统整体的I/O等待(wa
列),判断是否因磁盘I/O导致系统卡顿。7. 应用层优化:减少I/O压力
tar
打包后复制)。libaio
等异步I/O库,减少等待时间(如数据库、Web服务器)。innodb_buffer_pool_size
)或Web服务器(如Nginx的proxy_cache
)的缓存大小,减少对磁盘的直接访问。