1.缓存
varnish本身就是一个缓存系统,但如果有些东西不常用,我们需要清理对应的缓存。
首先通过实验了解什么是varnish的缓存:
在server1中:
vim /etc/varnish/default.vcl
systemctl restart varnish
查看缓存命中情况:没有缓存时第一次连接会显示MISS,有缓存时连接它会显示HIT
测试:
在清除缓存前:
curl -I www.westos.org
第一次连接时会显示MISS,后面的每次连接都会显示HIT
2.命令清理缓存(非图形化)
清理缓存中满足缓存条件的对象 ban
varnishadm ban req.url "~" / #清除全部缓存
varnishadm ban req.url "~" /index.html #清除指定缓存
测试:
curl -I www.westos.org
清除缓存前后:
3.图形化清理缓存
CDN推送平台
step1 解压推送平台的安装包:
yum install php unzip httpd -y #安装需要用到的软件包
unzip bansys.zip #解压
mv ./bansys/* /var/www/html
step2 修改apache使用的端口:
因为apache本来使用的80端口被varnish服务占了,所以需要修改
vim /etc/httpd/conf/httpd.conf
step3 修改varnish配置文件:
设置权限列表,不能让什么人都有权限去清理缓存
vim /etc/varnish/default.vcl
systemctl restart varnish
下图和这个一样意思
return (purge) —— 使流程进入vcl_purge 子程序,取出相应缓存的对象内容然后清除之
step4 修改config.php:
step5 修改本地解析:
在真机中:
step6 重启服务:
systemctl restart varnish
systemctl start httpd
step7 测试:
step8 清理缓存:
清理之前:
清理全部缓存:
清理之后:
清理指定缓存:
清理之后: