本文主要是介绍ATS标准插件( 3 ) Background Fetch Plugin,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
原文链接: https://www.9mblog.com/129.html
这个插件使得ATS可以直接从原始服务器上获取完整的视频资源或文件资源到缓存中。因为ATS默认情况下不缓存响应为206的资源,所以在客户端请求资源带byte-Range(http协议头中包含的字段)的时候,此插件可以让ATS缓存整个目标资源。
引用官方原文:
Using the plugin
做全局插件使用是,在plugin.config文件中进行如下设置:
background_fetch.so --config <config-file>
做remap插件时,在remap.config中做如下设置:
@plugin=background_fetch.so @pparam=<config-file>
Functionality
当原始服务器的响应满足一下条件时,会出发background插件获取数据:
l 请求是GET。
l 响应是206。
l 通过原始请求和响应可以确定响应能够被缓存。
满足上述条件时,ATS会想原始服务器再次请求刚才的数据,但这次会将range头去掉。这个操作对客户端是透明的。
为了不对服务器造成额外压力,每个url只执行一次该插件。
该插件支持从一个配置文件中获取头或ip的黑白名单。
background_fetch.so --config <config-file>
或
@plugin=background_fetch.so @pparam=<config-file>
配置文件内容如下:
include User-Agent ABCDEF
exclude User-Agent *
exclude Content-Type text
exclude X-Foo-Bar text
exclude Content-Length <1000
这篇关于ATS标准插件( 3 ) Background Fetch Plugin的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!