[发明专利]一种可配置的缓存系统和方法有效
申请号: | 201510526584.0 | 申请日: | 2015-08-25 |
公开(公告)号: | CN105117350B | 公开(公告)日: | 2018-08-24 |
发明(设计)人: | 文军 | 申请(专利权)人: | 摩贝(上海)生物科技有限公司 |
主分类号: | G06F12/0806 | 分类号: | G06F12/0806;H04L29/06 |
代理公司: | 上海翰信知识产权代理事务所(普通合伙) 31270 | 代理人: | 张维东 |
地址: | 200131 上海市浦东新区自由*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 配置 缓存 系统 方法 | ||
一种可配置的缓存系统和方法,包括前端调度器、前端缓存服务器,所述前端调度器中配置有相关的location规则和嵌入式脚本Lua语言,本发明在前端调度器中通过url重写技术和自定义header域值,排除可能干扰缓存的因素,最大程度保障缓存的命中率。确保不同URL按统一逻辑缓存,同时确保同一URL为登陆用户提供各自独立的缓存逻辑。
技术领域
本发明涉及互联网领域,尤其涉及一种前端缓存系统和方法。
背景技术
缓存技术在计算机系统中无处不在,从计算机到各种路由设备、从软件实现到硬件实现,设计良好的缓存系统,可以大大提高系统的响应速度,提高了用户体验。互联网应用中,缓存系统又分为memcache、redis等后端缓存,以及Squid、Varnish、Nginx、ApacheTraffic Server等前端缓存系统。不论前端缓存还是后端缓存,适应业务需求,提高缓存命中率是最重要的追求。
前端缓存服务,在此指使用CDN技术,利用Squid、Varnish、Nginx、Apache TrafficServer等做前端缓冲,提供HTTP协议所描述的缓存服务。
HTTP协议详细定义了前端缓存服务、以及浏览器本地缓存的支持细节,缓存与否受url、多个http header域值影响。现实业务场景中,浏览器、操作系统、url重定向、get参数、cookie值等众多因素变化,均可能导致缓存无效。
发明内容
本发明的目的是为了解决现有技术的不足,提供一种可配置的缓存系统和方法。
本发明的第一个目的是提供一种可配置的缓存系统,包括前端调度器、前端缓存服务器,所述前端调度器中配置有相关的location规则和嵌入式脚本Lua语言,所述前端调度器通过判断访问请求,根据url是否匹配自定义的header参数作相关判断,并将最终执行完的参数传递给前端缓存服务器。
本发明的第二个目的是提供一种可配置的缓存方法,通过上述的可配置的缓存系统实现,包括至少以下步骤:
(1)前端调度器转发请求,判断此次请求,并确保只匹配GET请求;
(2)前端调度器检测请求参数,通过url重写,消除无关逻辑的参数,确保请求中带有无关逻辑的参数都命中同一个缓存结果;
(3)前端调度器检测此次请求的cookie内容,提取与执行逻辑相关的cookie值;
(4)前端调度器检测此次请求的其他header内容,提取与执行逻辑相关的域值,并把域值传递给一个配置的变量flang;
(5)前端调度器判断变量flang是否匹配预设的值,如果匹配,就把值传递都给默认的变量deflang,生成正确的header域值;
(6)前端调度器把最终的header域值传递给前端缓存服务器。
上述的一种可配置的缓存方法,其中于,所述步骤(2)中,通过前端代理层中的location规则,判断请求参数,若可缓存,则进行url重写。
上述的一种可配置的缓存系统,其中,所述前端调度器采用Nginx代理服务器。
综上所述,由于采用上述技术方案,本发明在前端调度器中通过url重写技术和自定义header域值,排除可能干扰缓存的因素,最大程度保障缓存的命中率。确保不同URL按统一逻辑缓存,同时确保同一URL为登陆用户提供各自独立的缓存逻辑。
附图说明
图1是本发明一种可配置的缓存系统和方法的流程图。
具体实施方式
下面结合附图对本发明的具体实施方式作详细介绍。
实施例1
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于摩贝(上海)生物科技有限公司,未经摩贝(上海)生物科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510526584.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种制备羟基酯工艺改进系统
- 下一篇:一种应用于电袋除尘器的复合导流内构件