CDN目录刷新功能实现流程图
2024-04-25 11:23:31 0 举报
CDN目录刷新功能实现流程图
作者其他创作
大纲/内容
跳出目录刷新功能;nginx内置变量$refresh_time保持默认值-1
使用现有缓存文件响应给用户
Y
从uri_tree对象中获取请求uri对应的目录刷新时间,并通过ngx.var API将其赋值给为此功能新增的nginx内置变量$refresh_time
1. 标记缓存文件过期,并将缓存文件修改时间更新为目录刷新时间2. 执行REVALIDATED操作,即向源站发送if-none-match或if-modified-since请求头来验证文件是否已更新
1. 新建uri_tree对象(Trie算法实现),将purge_dir的值插入到对象中2. 将uri_tree对象插入到lru缓存
从源站拉取新文件进行缓存,同时将新缓存文件响应给用户
判断$refresh_time是否大于缓存文件的修改时间
从lru缓存中获取uri_tree对象,是否可以获取到
purge_dir是否为空
N
Access 阶段Lua 实现
去除缓存文件过期标记
源站文件是否已更新
Content 阶段Nginx C 实现
获取请求域名的purge_dir配置项
CDN目录刷新功能实现流程图
0 条评论
回复 删除
下一页