[发明专利]用于提供差异化缓存服务的方法、装置和系统在审
申请号: | 201610659823.4 | 申请日: | 2016-08-12 |
公开(公告)号: | CN107733952A | 公开(公告)日: | 2018-02-23 |
发明(设计)人: | 朱明英;邢豫;胡颖茂;朱海云;王海霞 | 申请(专利权)人: | 中国电信股份有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 中国国际贸易促进委员会专利商标事务所11038 | 代理人: | 刘剑波 |
地址: | 100033 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 提供 异化 缓存 服务 方法 装置 系统 | ||
技术领域
本发明涉及分布式缓存技术领域,特别涉及一种用于提供差异化缓存服务的方法、装置和系统。
背景技术
随着本地计算机系统向分布式系统的扩展,缓存在分布式计算领域中得到了广泛的应用。分布式缓存将高速内存作为数据对象的存储介质,数据以key/value形式存储,理想情况下可以获得DRAM(Dynamic Random Access Memory,动态随机存取存储器)级的读写性能,具有高性能的特点。目前常用的分布式缓存技术有memcached、Redis等。
分布式缓存由一个服务端实现管理和控制,有多个客户端节点存储数据,可以进一步提高数据的读取速率。在读取某个数据的时候,需要根据一致性哈希算法确定数据的存储和读取节点。以数据D,节点总个数N为基础,通过一致性哈希算法计算出数据D对应的哈希值(相当于门牌号),根据这个哈希值就可以找到对应的节点了。
现有的分布式缓存技术存在的主要问题是:数据存储和读取根据哈希算法随机进行,没有对数据根据特性(如性能要求、可靠性要求)等进行分组存储,所有的存储节点都需要按照缓存数据的最高性能要求和可靠性要求进行配置,需要主备节点的实时同步机制实现节点间的强一致性,实现的成本高,造成资源的浪费。
发明内容
本发明实施例提供一种用于提供差异化缓存服务的方法、装置和系统,通过根据数据特点配置不同规格要求的缓存存储节点,在数据进行读写时,应用可根据数据的特性申请不同规格要求的缓存空间,既能满足数据要求,也能提高资源的利用率。
根据本发明的一个方面,提供一种用于提供差异化缓存服务的方法,包括:
在接收到应用模块发送的缓存申请请求后,查询应用模块申请缓存的数据属性;
根据查询到的数据属性访问缓存节点列表,以获取与数据属性相对应的缓存节点组;
在缓存节点组内通过一致性哈希运算,以获得相应的缓存节点信息;
将缓存节点信息发送给应用模块,以便应用模块利用缓存节点信息到相应的缓存节点进行数据读写操作。
在一个实施例中,根据查询到的数据属性访问缓存节点列表,以获取与数据属性相对应的缓存节点组的步骤包括:
在查询到的数据属性具有高可靠性要求的情况下,访问缓存节点列表以获取与高可靠性要求相对应的缓存节点组;
在查询到的数据属性具有高性能要求的情况下,访问缓存节点列表以获取与高性能要求相对应的缓存节点组。
在一个实施例中,将当前的缓存节点进行分组,以形成高性能缓存组和高可靠缓存组;
将高性能缓存组中的缓存节点进行配置,以满足数据读取的高性能要求;
将高可靠缓存组中的缓存节点进行配置,以满足数据读取的高可靠性要求。
在一个实施例中,当有新缓存节点加入时,将新缓存节点加入高性能缓存组或高可靠缓存组中,并对新缓存节点进行相应的配置。
根据本发明的另一方面,提供一种用于提供差异化缓存服务的分布式缓存服务器,包括接收单元、查询单元、节点组确定单元、节点信息确定单元和发送单元,其中:
接收单元,用于接收应用模块发送的缓存申请请求;
查询单元,用于在接收单元接收到应用模块发送的缓存申请请求后,查询应用模块申请缓存的数据属性;
节点组确定单元,用于根据查询单元查询到的数据属性访问缓存节点列表,以获取与数据属性相对应的缓存节点组;
节点信息确定单元,用于在缓存节点组内通过一致性哈希运算,以获得相应的缓存节点信息;
发送单元,用于将缓存节点信息发送给应用模块,以便应用模块利用缓存节点信息到相应的缓存节点进行数据读写操作。
在一个实施例中,节点组确定单元具体在查询到的数据属性具有高可靠性要求的情况下,访问缓存节点列表以获取与高可靠性要求相对应的缓存节点组;在查询到的数据属性具有高性能要求的情况下,访问缓存节点列表以获取与高性能要求相对应的缓存节点组。
在一个实施例中,服务器还包括节点分组单元,其中:
节点分组单元,用于将当前的缓存节点进行分组,以形成高性能缓存组和高可靠缓存组;将高性能缓存组中的缓存节点进行配置,以满足数据读取的高性能要求;将高可靠缓存组中的缓存节点进行配置,以满足数据读取的高可靠性要求。
在一个实施例中,节点分组单元还用于在有新缓存节点加入时,将新缓存节点加入高性能缓存组或高可靠缓存组中,并对新缓存节点进行相应的配置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国电信股份有限公司,未经中国电信股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610659823.4/2.html,转载请声明来源钻瓜专利网。