为了账号安全,请及时绑定邮箱和手机立即绑定

关于FastDFS蛋疼的集群和负载均衡(十一)之清除Nginx文件缓存

标签:
Java Linux

diary_report.jpg

Interesting things

我上传一张图片,返回的信息如下:

2
group:group1
path:M00/00/00/wKgMLFpLO-GAR41SAAd8hCbLY3Y765.jpg

我能正确的访问到图片
image.png

然而我删除了图片
image.png

image.png

当我再次访问该图片时,还能成功访问。
image.png

我遇到的问题就是这样子的,访问前我已经清除了浏览器的缓存。排除了浏览器缓存的问题,现在我继续排查问题。

What did you do today

然后我觉得是nginx cache的原因

  • 进入/fastdfs/cache/nginx/proxy_cache/目录下,我们可以看到缓存文件。
    image.png

  • 用记事本打开文件,我们可以看到proxy_cache_key
    image.png

  • 那proxy_cache_key为什么是这样子组成呢?我们可以打开tracker1(192.168.12.11)下的nginx.conf查看。
    image.png

  • 我们设置的proxy_cache_key,以URI,参数组合成web缓存的key,Nginx根据key值hash,存储缓存内容于二级缓存目录中。也就是上文的/fastdfs/cache/nginx/proxy_cache/d/90

proxy_cache_key $uri$is_args$args;

  • 我们怎么清除nginx的缓存里,我们可以查看nginx.conf里面的配置。
    image.png

  • 也就是说我们通过访问/purge/proxy_cache_key就能清除缓存。

        location ~/purge(/.*) {
                allow 127.0.0.1;
                allow 192.168.12.0/24;
                deny all;
                proxy_cache_purge http-cache $1$is_args$args;
                error_page 405 =200 /purge$1;
        }
  • 那我们访问http://192.168.12.111/fastdfs/purge/group1/M00/00/00/wKgMLFpLO-GAR41SAAd8hCbLY3Y765.jpg,显示我们成功的清除缓存了!
    image.png

  • 美滋滋,我们继续访问之前的图片urlhttp://192.168.12.111/fastdfs/group1/M00/00/00/wKgMLFpLO-GAR41SAAd8hCbLY3Y765.jpg,发现此时已经访问不到了!
    image.png

Summary

根据项目需求,暂时用不上8台。我目前采用的方案是虚拟机+keepalived+nginx,也可以采用lvs+keepalived+nginx方案。所以我优化后的拓扑图附上。
image.png

点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消