服务器如果长时间不清理缓存,可能会造成网站加载速度缓慢,我们需要定时清理缓存来解决这个问题,实验所用机子为ubuntu18.04。
创建sh文件
vim cleanCache.sh
输入代码
#!/bin/bash
# 输出清空缓存前的内存使用量
read mem< <(awk '/MemTotal/{total=$2}/MemFree/{free=$2}/Buffers/{buffers=$2}/^Cached/{cached=$2}END{print (total-free-buffers-cached)/1024}' /proc/meminfo)
echo "before clearing cache, the memory is: $mem"
# 清空缓存
sync;sync;sync #写入硬盘,防止数据丢失
sleep 10 #延迟10秒
echo 3 > /proc/sys/vm/drop_caches
# 输出清空缓存后的内存使用量
read mem< <(awk '/MemTotal/{total=$2}/MemFree/{free=$2}/Buffers/{buffers=$2}/^Cached/{cached=$2}END{print (total-free-buffers-cached)/1024}' /proc/meminfo)
echo "after clearing cache, the memory is: $mem"
更改权限
chmod +x cleanCache.sh
更改完权限之后我们使用./cleanCache.sh运行看看是否正常。
创建定时任务
vim /etc/crontab
在文件最后输入如下代码:
0 */1 * * * root /root/cleanCache.sh
以上代码表示每小时清理一次,路径填你自己创建的文件路径。
重启服务
service cron restart
真不错
不错,多来点