首页 > ATS中的动态回源插件stale-while-revalidate调研

ATS中的动态回源插件stale-while-revalidate调研

简而言之,stale-while-revalidate会对freshness采取一定的灵活性(在乎你的控制)来向client隐藏back-end延迟,更多细节参见RFC5861.该插件支持两种功能

stale-while-revalidate和stale-if-error





安装

在configure时指定

--enable-experimental-plugins

在build时会生成该库并安装到插件动态库目录libexec/traffficserver下面





配置

在plugin.config中添加一行

stale_while_revalidate.so

当然后面可以添加不同参数来记录不同的日志

--log-all                       enable all logging

--log-stale-while-revalidate    enable logging of stale-while-revalidate

--log-stale-if-error            enable logging of stale-if-error

--log-filename           set the filename to log to (.log)





并重启服务器

trafficserver restart





测试该插件的Node.js服务器

源码中有个test_server.js文件,它是一个测试服务器,它的原理是:

在127.0.0.1:8081端口监听http请求,返回具有如下响应头的http response

Cache-Control: max-age=864000, stale-while-revalidate=1728000

更多相关: