varnish4配置手动清除缓存

varnish4清楚缓存方法主要有,通过varnishadm 管理,或vcl配置。

其中vcl配置可以让客户端手动请求清楚缓存,以保证局部数据及时更新,而不用重启varnish服务器。

配置方法:

#允许清除缓存IP集
acl purge_ip{
    "127.0.0.1";
    "localhost";
}

sub vcl_recv {
   if(req.method ~ "update"){
      if(client.ip ~ purge_ip){
          return(purge);//清除缓存
      }
      return (synth(404,"Not Found"));
   }
}

sub vcl_purge{
    return (synth(200,"success"));
}

重启varnish后,打开火狐浏览器,随便进入一个缓存页面,鼠标右键查看源代码,再选择网络。

点击第一个请求信息。

点击 编辑和重发

修改请求类型为   PURGE  再点击  发送

查看返回状态,如果成功则成功清除缓存,可以按 F5 刷新页面,查看新内容。

注意:varnish4 与varnish3 配置方式不一样,所以此配置方式只能使用在 varnish4,varnish3使用方式差不多,是在vcl_hit中使用 purge; 命令然后返回一个  error 200 "success" , vcl_recv 应该使用 return(lookup);,再就是不要忘记添加 reg.request==“PURGE” 判断。

时间: 2024-08-23 22:01:05

varnish4配置手动清除缓存的相关文章

SDWebImage手动清除缓存的方法

1.找到SDImageCache类 2.添加如下方法: [objc] view plaincopyprint? - (float)checkTmpSize { float totalSize = 0; NSDirectoryEnumerator *fileEnumerator = [[NSFileManager defaultManager] enumeratorAtPath:diskCachePath]; for (NSString *fileName in fileEnumerator) {

手动清除缓存

1.NSString *home = NSHomeDirectory();获取应用程序的目录路径, 目录下有三个文件夹:Documents.Library.tmp Documents:主要存放:使用该路径放置关键数据,也就是不能通过App重新生成的数据 Library:主要存放:缓存文件 ,可以实时生成. tmp:存放临时文件,关闭时会自动清除. 2. 把要清除的文件夹内容写出来. 根据前面的home路径 去前往文件夹查看要清除的文件夹在Library/Caches/default/下 NSSt

iOS中 SDWebImage手动清除缓存的方法 技术分享

1.首先要找到SDImageCache类.才可以以下的方法 2.添加如下方法: [objc] view plaincopy - (float)checkTmpSize { float totalSize = 0; NSDirectoryEnumerator *fileEnumerator = [[NSFileManager defaultManager] enumeratorAtPath:diskCachePath]; for (NSString *fileName in fileEnumera

手动清除Google Chrome DNS缓存

为了获得更好的互联网访问性能,Google Chrome 流量器内建了一个缓存系统,不仅可用于缓存网站内容,还可以进行 DNS 记录的缓存.Chrome 内置的 DNS 缓存系统有一个隐藏选项,它可以允许用户手动清除 Chrome DNS 主机缓存.刷新 DNS 缓存可以帮助用户修复访问某些网页时可能遇到的主机连接问题. 当更改了操作系统的 DNS 设置时,如果只清除操作系统的 DNS 缓存不一定会修复 Chrome 的连接问题,手动刷新 Chrome DNS 缓存会比较有用. 浏览器 DNS

手动清除memcached缓存方法

1.查memcache状态/usr/bin/perl /usr/local/src/memcached-1.4.5/scripts/memcached-tool localhost:11211或者telnet localhost 11211 2.手动清除memcached测试 1). flush_all  echo "flush_all" | nc localhost 11211 # telnet localhost 11211Trying 127.0.0.1...Connected

Xcode清除缓存、清理多余证书

Xcode清除缓存.清理多余证书 1.删除Xcode中多余的证书provisioning profile 手动删除: Xcode6 provisioning profile path: ~/Library/MobileDevice/Provisioning Profiles 2.清理Xcode编译项目产生的缓存垃圾 (Xcode永久了,会产生很多项目编译缓存,占用一大堆硬盘空间,此时需要对该目录进行清理) 手动删除: Xcode编译项目缓存垃圾的目录: ~/Library/Developer/X

asp.net页面清除缓存2(转)

ASP.NET 提供三种主要形式的缓存:页面级输出缓存.用户控件级输出缓存(或称为片段缓存)和缓存 API. 输出缓存和片段缓存的优点是非常易于实现,在大多数情况下,使用这两种缓存就足够了.而缓存 API 则提供了额外的灵活性(实际上是相当大的灵活性),可用于在应用程序的每一层利用缓存. Steve 的缓存提示 尽早缓存:经常缓存 您应该在应用程序的每一层都实现缓存.向数据层.业务逻辑层.UI 或输出层添加缓存支持.内存现在非常便宜 — 因此,通过以智能的方式在整个应用程序中实现缓存,可以获得很

spring aop + xmemcached 配置service层缓存策略

Memcached 作用与使用 基本介绍 1,对于缓存的存取方式,简言之,就是以键值对的形式将数据保存在内存中.在日常业务中涉及的操作无非就是增删改查.加入缓存机制后,查询的时候,对数据进行缓存,增删改的时候,清除缓存即可.这其中对于缓存的闭合就非常重要,如果缓存没有及时得到更新,那用户就会获取到过期数据,就会产生问题. 2,对于单一业务的缓存管理(数据库中只操作单表),只需生成一个key,查询时,使用key,置入缓存:增删改时,使用key,清除缓存.将key与表绑定,操作相对简单. 3,但是在

shiro 退出 清除缓存

shiro是一个被广泛使用的安全层框架,通过xml配置方式与spring无缝对接,用户的登陆/退出/权限控制/Cookie等管理系统基础功能交给shiro来管理. 一般,在JavaWEB管理平台系统时,用户退出系统之前没需要清除用户数据和关闭连接,防止垃圾数据堆积,shiro提供了LogoutFilter过滤器,我们可以通过LogoutFilter的preHandle方法,实现清除缓存功能. 页面代码: <div class="item" style="float:ri