[发明专利]对高速缓存条目进行一致性检查的概率技术有效
申请号: | 200780032834.9 | 申请日: | 2007-08-21 |
公开(公告)号: | CN101512497A | 公开(公告)日: | 2009-08-19 |
发明(设计)人: | 赫马特·巴努;奥兹冈·尔多甘;托拜厄斯·霍格尔斯;内文·沙阿;赖安·斯诺德格拉斯 | 申请(专利权)人: | 亚马逊技术有限公司 |
主分类号: | G06F12/00 | 分类号: | G06F12/00 |
代理公司: | 中科专利商标代理有限责任公司 | 代理人: | 王波波 |
地址: | 美国内*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 高速缓存 条目 进行 一致性 检查 概率 技术 | ||
技术领域
所描述技术涉及处理数据请求的领域。
背景技术
高速缓存通常指把从远端数据源获得的数据进行本地存储,以精简并提高对该数据的访问效率。图1是示出了用于高速缓存数据的典型结构的网络图。它示出了多个数据提供方节点,例如数据提供方110,120和130,其中每一个都向多个数据消费方节点提供数据。例如,数据提供方110向包括消费方112和113在内的消费方提供数据。每个数据提供方还具有本地高速缓存。例如,提供方110拥有本地高速缓存111。当数据提供方收到来自其消费方之一的主数据请求时,数据提供方首先检查它的本地高速缓存,以确定高速缓存是否能满足主数据请求。如果是,提供方用基于高速缓存内容的响应来回应主数据请求;否则,提供方(1)向权威的数据源发起次数据请求,(2)用基于该数据源响应于次数据请求所提供的数据的响应,来回应主数据请求,并且(3)在它的本地高速缓存中存储该数据源响应于次数据请求所提供的数据,作为条目,以用于满足将来的主数据请求。在某些情况下(未示出),多个提供方可以共享同一个高速缓存。在某些情况下(未示出),高速缓存可以自我管理,或者可以被相应的数据提供方之外的其他实体管理。
作为一个示例,每个数据消费方可以是向数据提供方,即网络服务器,请求网页或者其它资源的网络客户端。数据源可以是提供数据的中央数据存储或者服务,该数据使得网络服务器可以构建网络客户端所请求的网页或者其它资源。在美国专利申请No.11/177,206(于2005年7月8日提交)中描述了这样一个使用本地高速缓存的构架,该申请全部内容作为参考合并在此。此外,数据提供方可以是代理服务器或者其它中间高速缓存,比如在网络客户端运行的同一计算机系统上存储的高速缓存,其针对一个或者多个网络客户端和网络服务器。
在例如上述环境中,高速缓存数据所提供的效率级别高度依赖于每一个高速缓存是如何管理的,特别是高速缓存和/或它的数据提供方所使用的基本原理,该基本原理用于确定高速缓存条目存储的数据对象的版本应该使用多长时间来满足主请求。
用于保持高速缓存条目新鲜度的常规方法有显著的缺点。第一种常规方法涉及对每个高速缓存数据对象的对象寿命的使用,数据对象在包含有该对象的条目失效前应在高速缓存中被保存的最大时间量(有时,称之为对象的“生存时间”)。在这种方法中,要么提供数据对象的数据源为该对象分配这种时间量,要么数据提供方分配时间量。当包含该数据对象的高速缓存条目被添加到高速缓存中,分配的时间量加到当前时间上,以建立该条目的失效时间。当经过了该条目的失效时间时,该条目失效,不能被从高速缓存中获取,并且它占用的空间可以被收回用于新的高速缓存条目。
通常很难选择对象寿命以产生好的结果。一方面,如果对象寿命选择得过长,高速缓存的对象可能会变得“陈旧”,即不再和提供该高速缓存的对象的数据源响应于对该对象的新的次数据请求而提供的对象相匹配,并且对于请求数据的消费方具有价值减少。另一方面,如果对象寿命选择得过短,使用高速缓存的对象以满足主数据请求的可能性就会很低,并且高速缓存该对象几乎不会带来什么好处。
用于保持高速缓存条目新鲜度的第二种常规方法涉及对显式失效的使用。显式失效是当数据源确定它将响应于次数据请求而提供的对象的版本已发生变化,并且数据源提供的该对象的任何较早的高速缓存版本现在都陈旧时,数据源发送给数据提供方的通知。当数据提供方收到了来自数据源的显式失效通知时,它就会立即使其高速缓存中所引用的对象失效,如果该对象被包含其中的话。
尽管显式失效方法能够克服对象寿命方法的相关缺点,但是显式失效方法的缺点在于,消耗了实质的处理和/或者通信资源。首先,检测对象的变化和发送显式失效通常会在数据源部分消耗显著的处理能力。一旦数据源检测到这种变化,它可以(1)向所有数据提供方发送显式失效,这导致大量网络带宽被用于传送该显式失效,并且导致显著的数据提供方处理成本被用于响应该显式失效,或者(2)数据源本身花费额外的处理和存储资源,来确定哪些数据提供方最有可能拥有高速缓存对象的陈旧版本,并且仅仅向那些数据提供方发送显式失效。
发明内容
用于保持高速缓存条目新鲜度的并且克服了使高速缓冲条目失效的常规方法的缺点的方法是非常有用的。
附图说明
图1是示出了用于高速缓存数据的典型结构的网络图。
图2是示出了典型地合并入至少一些计算机系统以及其上执行本发明工具的其他设备中的一些组件的框图。
图3是描述了本发明工具运行的时间线图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于亚马逊技术有限公司,未经亚马逊技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200780032834.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:计算平台的证明
- 下一篇:以无线方式对具有独立升级软件的移动装置安全升级