Ubuntu缓存如何优化性能
导读:Ubuntu缓存优化性能的实用方法 1. 清理各类缓存文件 缓存文件会占用大量磁盘空间和内存,定期清理可释放资源。 APT缓存:使用sudo apt-get clean删除所有已下载的软件包文件(位于/var/cache/apt/arch...
Ubuntu缓存优化性能的实用方法
1. 清理各类缓存文件
缓存文件会占用大量磁盘空间和内存,定期清理可释放资源。
- APT缓存:使用
sudo apt-get clean删除所有已下载的软件包文件(位于/var/cache/apt/archives/),sudo apt-get autoclean删除旧版本的软件包缓存(仅保留当前版本),sudo apt-get autoremove删除不再被任何软件包依赖的孤立包。 - 系统内存缓存:通过
sync命令将文件系统缓冲区数据刷新到磁盘,再用echo命令清理不同层级的缓存:echo 1 > /proc/sys/vm/drop_caches(清理PageCache)、echo 2 > /proc/sys/vm/drop_caches(清理dentries和inodes)、echo 3 > /proc/sys/vm/drop_caches(清理所有缓存,非破坏性操作,不影响正在运行的程序)。 - Journal日志:使用
journalctl --vacuum-time=1w清理一周前的日志,journalctl --vacuum-size=500M将日志大小限制在500MB以内,减少日志占用的磁盘空间。
2. 调整内核缓存参数
内核参数直接影响缓存的使用效率,合理调整可提升性能。
- Swappiness参数:控制内核使用交换分区(swap)的倾向,默认值60(值越高越易使用swap)。建议降低至10-30(内存充足时可设为10),减少对swap的依赖,提升内存使用效率。临时设置:
sudo sysctl vm.swappiness=10;永久生效:编辑/etc/sysctl.conf文件,添加vm.swappiness=10。 - VFS缓存压力:
vm.vfs_cache_pressure参数控制内核回收dentries和inodes缓存的积极性,默认值100(值越高回收越积极)。建议设置为50,保留更多内存用于常用缓存,提升文件访问速度。调整方法同上。 - IO调度器优化:根据存储设备选择合适的IO调度器:HDD适合
deadline(减少寻道时间),SSD适合noop(无队列调度,减少CPU开销)。查看当前调度器:cat /sys/block/sda/queue/scheduler([ ]内为当前值);临时设置:echo deadline > /sys/block/sda/queue/scheduler;永久生效:编辑/etc/default/grub,添加GRUB_CMDLINE_LINUX_DEFAULT="elevator=deadline",运行sudo update-grub并重启。
3. 使用编译缓存工具
编译大型项目时,缓存编译结果可大幅缩短时间。
- ccache:安装
sudo apt-get install ccache,通过export CC=ccache gcc(或export CXX=ccache g++)将编译器指向ccache,缓存编译结果(默认缓存大小为10GB,可通过ccache -M 20G调整)。 - sccache:性能优于ccache,支持分布式缓存(适用于团队协作)。安装
sudo apt-get install sccache,同样通过export CC=sccache gcc配置,提升编译效率。
4. 配置内存缓存服务
内存缓存可将常用数据存储在内存中,减少磁盘IO。
- Memcached:安装
sudo apt-get install memcached,编辑/etc/memcached.conf文件,设置缓存大小(如-m 1024表示1GB),重启服务sudo systemctl restart memcached(适用于数据库、Web应用等场景)。 - DNS缓存:安装
dnsmasq(sudo apt-get install dnsmasq),编辑配置文件(如/etc/dnsmasq.conf)设置缓存大小(cache-size=1000,默认150),重启服务sudo systemctl restart dnsmasq,提升域名解析速度。
5. 优化文件系统缓存
文件系统缓存是提升读写性能的关键,合理配置可充分利用内存。
- 预读优化:调整文件系统的预读大小(readahead),针对ext4文件系统,使用
blockdev --setra 8192 /dev/sda1(设置预读为8MB,默认512KB),提升顺序读性能(如视频编辑、大数据处理)。 - 文件系统选择:性能敏感场景推荐使用XFS(支持大文件、高并发)或ext4(稳定、兼容性好),避免使用ext3(性能较差)。
- TRIM支持:若使用SSD,需开启TRIM功能(
sudo systemctl enable fstrim.timer),定期清理无效数据块,延长SSD寿命并提升写入性能。
6. 定时清理缓存
通过定时任务自动清理缓存,保持系统长期高效运行。
创建脚本clear_caches.sh,内容如下:
#!/bin/bash
echo "开始清除缓存"
sync;
sync;
sync
sleep 20
echo 1 | sudo tee /proc/sys/vm/drop_caches
echo 2 | sudo tee /proc/sys/vm/drop_caches
echo 3 | sudo tee /proc/sys/vm/drop_caches
sync
赋予执行权限:chmod 755 clear_caches.sh,添加定时任务(如每小时执行一次):crontab -e,添加* */1 * * * /path/to/clear_caches.sh。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu缓存如何优化性能
本文地址: https://pptw.com/jishu/737863.html
