refresh_pattern的作用:
用于确定一个页面进入cache后,它在cache中停留的时间。
语法:
refresh_pattern [-i] regexp min percent max [options]
几个概念:
resource age = (对象进入cache的时间) - (对象的last_modified)
response age = (当前时间) - (对象进入cache的时间)
LM-factor=(response age)/(resource age)
举个例子,这里只考虑percent, 不考虑min 和 max
例如:refresh_pattern 20%
假设源服务器上www.aaa.com/index.htm -----lastmodified 是 2007-04-10 02:00:00
squid上 proxy.aaa.com/index.htm index.htm进入cache的时间 2007-04-10 03:00:00
1)如果当前时间 2007-04-10 03:00:00
resource age =3点-2点=60分钟
response age =0分钟
index.htm还可以在cache停留的时间(resource age)*20%=12分钟
也就是说,index.htm进入cache后,可以停留12分钟,才被重新确认。
2)如果当前时间 2007-04-10 03:05:00
resource age =3点-2点=60分钟
response age =5分钟
index.htm还可以在cache停留的时间(resource age)*20%=12分钟-5=7
LM-factor=5/60=8.3%<20%
一直到2007-04-10 03:12:00 LM-factor=12/60=20% 之后,cache中的页面index.htm终于stale。
如果这时没有index.htm的请求,index.htm会一直在缓存中,如果有index.htm请求,squid收到该请求后,由于已经过期,squid会向源服务器发一个index.htm是否有改变的请求,源服务器收到后,如果index.htm没有更新,squid就不用更新缓存,直接把缓存的内容放回给客户端,同时,重置对象进入cache的时间为与源服务器确认的时间,比如2007-04-10 03:13:00,如果正好在这个后重新确认了页面。重置后,resource age变长,相应在cache中存活的时间也变长。
如果有改变则把最新的index.htm返回给squid,squid收到会更新缓存,然后把新的index.htm返回给客户端,同时根据新页面中的Last_Modified和取页面的时间,重新计算resource age,进一步计算出存活时间。
实际上,一个页面进入cache后,他的存活时间就确定了,即 (resource age) * 百分比,一直到被重新确认。
理解了百分比后,min max就好理解了
squid收到一个页面请求时:
1、计算出response age,
2、如果response age<min 则 fresh 如果response age>max 则 stale
3、如果response age在之间,如果response时间<存活时间,fresh,否则stale
分享到:
相关推荐
refresh_pattern的作用: 用于确定一个页面进入cache后,它在cache中停留的时间。refresh_pattern规则仅仅应用到没有明确过时期限的响应。原始服务器能使用Expires头部,或者Cache-Control:max-age指令来指定过时期限...
基于Alpine Linux+S6的Squid___内容缓存.zip
设置Squid Cache_mem大小.docx
如何设置Squid Cache_mem大小.docx
该笔记由博主本人亲自整理撰写,介绍以及各方面的操作都进行了简化提示,很适合linux的萌新进行学习,基础的配置时候入门新手了解squid与haproxy两个服务
被广泛使用的代理服务器
NULL 博文链接:https://k19421.iteye.com/blog/2308526
squid使用源码安装的时候经常启动的时候出现的错误
SARG的全称是:Squid Analysis Report Generator SARG作为一款Squid日志分析工具,它采用html格式,详细列出了每一位用户访问internet的站点信息,时间占用信息,排名,连接次数,访问量,访问量等
用于squid mysql 验证的软件 这样squid的帐户就可以放到mysql了
squid_配置详解
squid日志格式-http错误代码-注解
网络故障判断强大的工具,SNIFFER,希望对大家有用。
7.7 refresh_pattern 第8 章高级磁盘缓存主题 8.1 是否存在磁盘I/O瓶颈? 8.2 文件系统调整选项 8.3 可选择的文件系统 8.4 aufs存储机制 8.5 diskd存储机制 8.6 coss存储机制 8.7 null存储机制 8.8 哪种最...
squid在windows下的版本,内附使用说明,squid是liunx下高性能的代理软件。
Samba_与squid_统一使用域(AD)验证
可以用在正反代理限速