[发明专利]分布式缓存方法及其系统、以及缓存设备和非缓存设备有效
申请号: | 200810055995.6 | 申请日: | 2008-01-03 |
公开(公告)号: | CN101196852A | 公开(公告)日: | 2008-06-11 |
发明(设计)人: | 郭峰 | 申请(专利权)人: | 杭州华三通信技术有限公司 |
主分类号: | G06F12/08 | 分类号: | G06F12/08 |
代理公司: | 北京德琦知识产权代理有限公司 | 代理人: | 宋志强;麻海明 |
地址: | 310053浙江省杭州市高新技术产业*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 缓存 方法 及其 系统 以及 设备 | ||
技术领域
本发明涉及缓存技术,具体涉及一机多板系统中的分布式缓存方法及其系统、以及缓存设备和非缓存设备。
背景技术
随着对系统响应速度要求的提高,缓存技术越来越多的被应用在诸如网络存储系统等频繁响应用户访问请求的系统中。缓存技术是指在用户与提供访问服务的真实设备之间增加缓存设备,将用户经常访问的真实设备数据暂存在缓存设备中。当用户提出数据请求时,首先询问缓存设备,如果被请求的数据在缓存设备中,则缓存设备立刻将被请求数据返回给用户。由于缓存设备的缓存介质通常采用内存这样的快速存储介质,因此缓存设备响应数据请求的速度要远远大于真实设备的响应速度,这不仅缩短了访问响应时间,而且降低了真实设备的负荷。
图1为现有技术中缓存设备处理数据请求的流程图。如图1所示,该方法包括以下步骤:
步骤101:接收外部数据请求。
步骤102:判断本地缓存中是否存在被请求数据,如果是,则执行步骤103,否则执行步骤104。
步骤103:用本地缓存中的数据响应外部数据请求,本流程结束。
步骤104:向真实设备转发外部数据请求。
步骤105:用真实设备返回的数据响应外部数据请求。
步骤106:判断本地缓存是否已满,如果是,则执行步骤107和108,否则,直接执行步骤108。
步骤107:删除本地缓存中最长时间未被访问的数据。
步骤108:将真实设备返回的数据存入本地缓存。那么,缓存设备下次收到相同的外部数据请求时,就可以直接响应,而不必访问真实设备,从而提高了访问响应速度,降低了真实设备的负担。
至此,本流程结束。
从图1描述的流程可见,缓存设备缓存容量越大,其能够处理的外部数据请求越多,真实设备被访问的概率就越低,那么,访问响应速度越快,真实设备负担越低。可见,尽可能的扩大缓存容量是很有必要的。
目前,扩大缓存容量的方式通常是增加系统中存储介质的数量和容量。例如增加内存、磁盘等存储介质,或者将原有的小容量缓存介质替换为大容量缓存介质。
在采用增加存储介质数量方式时,增加了缓存设备硬件上的芯片数量,需要更大的PCB板面积来容纳所增加的芯片。同时,硬件电路的增加也增大了PCB布线的难度。此外,缓存数据的访问是由缓存设备的CPU通过寻址完成。一个缓存设备中其CPU的寻址空间是固定的,因此该CPU能够访问的内存空间有限。那么,即使增加了存储介质数量,在CPU所访问地址空间的限制下,增加的存储介质也不一定能够被全部访问到,因此缓存扩充受到限制。
在采用增加存储介质容量的方式时,仍然会因CPU访问地址空间有限,导致缓存扩充受到限制。
发明内容
有鉴于此,本发明提供了一种分布式缓存方法,应用于一机多板系统中,能够在不额外增加存储介质的情况下,实现缓存容量的扩充。
该方法包括:
所述系统中的缓存板记录提供自身部分内存作为补充缓存的非缓存板;
缓存板将因本地缓存满而准备删除的数据保存到所述非缓存板提供的补充缓存中,并从缓存板删除;
缓存板根据本地缓存和补充缓存中的数据,响应外部数据请求。
较佳地,提供补充缓存的所述非缓存板的数量为n个,n为大于或等于1的整数;所述缓存板进一步记录非缓存板的缓存顺序;
所述缓存板将因本地缓存满而准备删除的数据保存到补充缓存中包括:缓存板处理待缓存数据,在判定本地缓存已满时,根据所述存储顺序将本地缓存中最长时间未被访问的数据发送给n个非缓存板中的一个,从本地缓存删除所述最长时间未被访问的数据,并保存所述待缓存数据。
其中,所述缓存板根据本地缓存和补充缓存保存的数据,响应外部数据请求包括:所述缓存板接收外部数据请求,当判定本地缓存不存在被请求数据时,判断所述补充缓存是否存在被请求数据,如果是,则利用从补充缓存获取的被请求数据响应所述外部数据请求,否则,利用从真实设备获取的被请求数据响应所述外部数据请求;然后将响应的被请求数据保存在本地缓存。
较佳地,所述缓存板接收外部数据请求后,同步转发给所述非缓存板
所述判断所述补充缓存是否存在被请求数据为:在接收到非缓存板返回的被请求数据时,判定为所述补充缓存存在被请求数据,否则,判定为所述补充缓存不存在被请求数据。
较佳地,提供补充缓存的所述非缓存板的数量为n个,n为大于或等于1的整数;所述转发给所述非缓存板为:将所述外部数据请求同时转发给所述n个非缓存板。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州华三通信技术有限公司,未经杭州华三通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810055995.6/2.html,转载请声明来源钻瓜专利网。