[发明专利]基于智能刷新的文件更新发布的方法和系统有效
申请号: | 201210520720.1 | 申请日: | 2012-12-06 |
公开(公告)号: | CN102946442A | 公开(公告)日: | 2013-02-27 |
发明(设计)人: | 洪珂;郭文强;谢玉燕 | 申请(专利权)人: | 网宿科技股份有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L29/06 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 施浩 |
地址: | 200030 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 智能 刷新 文件 更新 发布 方法 系统 | ||
技术领域
本发明涉及源站文件更新发布技术,尤其涉及源站及缓存服务器对更新更新的处理方法和系统。
背景技术
传统HTTP网站,文件刷新的方式是:对文件资源设置一个过期时间,在文件过期后,客户端会到源站验证本地缓存文件是否可用,如果源站对该文件没有修改,会告知客户端,文件未修改,可使用本地缓存文件;如果源站更新了该资源,则会重新发送该资源给客户端,客户端使用新的文件资源。为了让网站的资源及时更新,又不影响网站性能,源站通常会对经常改变的页面设置比较短的过期时间,对不经常改变的页面设置比较长的过期时间,比如可以对HTML等经常修改的文本页面设置过期时间为5分钟,对GIF等不经常修改的资源设置过期时间为1周。
对资源设置一定的缓存时间,则客户端在设置的缓存时间内都将使用缓存的资源,没办法强制客户端马上更新缓存文件,对于希望实时更新的文件,将缓存时间设置为0后客户端每次都需要回源验证,造成源站压力大的问题。因此一些网站引用了这样一种刷新机制:对于经常改变的资源,引用的时候在资源URI后面增加查询串,该查询串的值为资源更新的版本号,一旦资源更新则改变查询串版本号的值,这样客户端就可以立马刷新资源。
引用资源带查询串的方式能马上刷新资源,但是这个方案存在以下弊端:
(1)大型网站所引用的资源非常多,更新的时候只会更新部分资源,如果每次都只对这部分资源引用进行版本号更新的话,到后面资源的版本号难于统一控制。因此为了统一管理资源版本,大部分的网站在对部分资源更新的时候,会统一更改所有资源的版本号;
(2)对部分资源进行更新时,一旦更改了所有资源的版本号,则资源被访问的时候都会回源重新取文件,造成回源量过大。
发明内容
本发明的目的在于解决上述问题,提供了一种基于智能刷新的文件更新发布的方法和系统,适用于使用缓存服务器架构的源站进行文件的同步更新,减轻源站压力。
本发明的技术方案为:本发明揭示了一种基于智能刷新的文件更新发布的方法,包括源站对文件资源的更新流程以及缓存服务器对客户端请求的处理流程,
其中源站对文件资源的更新流程为:
当源站需要更新文件资源时,更新资源内容和更新资源引用的查询串;
其中缓存服务器对客户端请求的更新流程为:
缓存服务器接收到带版本号的请求时,根据URI检查是否存在所请求的资源对应的缓存;
如果缓存不存在则直接回源取资源,将返回的内容发送给客户端并缓存,流程结束;
如果缓存的资源存在且查询串的版本号相同,则直接发送缓存内容,流程结束;
如果缓存的资源存在且查询串的版本号不同,则使用更新后的URL、缓存中已有的标签Etag以及最后修改时间Last-Modified值回源验证缓存是否更新;
对于回源验证的请求,如果返回304响应,则使用已有的缓存响应,并更新缓存的查询串的版本号,如果返回非304响应,则使用更新后的响应覆盖已有的缓存响应,并将更新后的响应返回给客户端。
根据本发明的基于智能刷新的文件更新发布的方法的一实施例,源站更新资源内容是指对服务器上需要修改的文件资源进行修改。
根据本发明的基于智能刷新的文件更新发布的方法的一实施例,源站更新资源引用的查询串是指源站对所有资源URL中的版本号查询串进行修改,以确保资源版本的统一,方便对资源版本号进行管理,所述版本号查询串是源站对资源引用时添加的。
本发明还揭示了一种基于智能刷新的文件更新发布的系统,包括源站对文件资源的更新装置以及缓存服务器对客户端请求的处理装置,
其中源站对文件资源的更新装置包括:
资源内容更新模块,更新文件资源的内容;
查询串更新模块,更新文件资源引用的查询串;
缓存服务器对客户端请求的处理装置包括:
缓存资源查询模块,缓存服务器接收到带版本号的请求时,根据URI检查是否存在所请求的资源对应的缓存;
回源模块,当所请求的资源的缓存不存在时直接回源取资源,将返回的内容发送给客户端并缓存;
缓存内容发送模块,当缓存的资源存在且查询串的版本号相同时,直接发送缓存内容;
缓存更新验证模块,当缓存的资源存在且查询串的版本号不同时,使用更新后的URL、缓存中已有的标签Etag以及最后修改时间Last-Modified值回源验证缓存是否更新;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于网宿科技股份有限公司,未经网宿科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210520720.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:用于汽车转向系统的传感器组件
- 下一篇:一种可充电使用的便携式信号放大器