一种分布式缓存方法及系统的制作方法_3

文档序号:9814365阅读:来源:国知局
组没影响,不会造成大范围的缓存数据迁移,运是第二种扩容方式。 不过最好的扩容方式是添加新的分组,把新加的缓存服务器挂在新的分组里,运样全部旧 的缓存数据都不会受到影响,运是第一种扩容方式。运样,实现了分布式缓存集群可W任意 水平扩容,且集群数据可W均匀分布。
[0044] 本发明的缓存服务器是一个可W水平扩展的缓存集群,它可W根据缓存规模增大 而增大,它的扩容是任意的,可W每次扩容一台至多台,新的Key值可W通过在配置表中添 加新的分组或修改旧的分组配置来均衡引导分布至新扩容的节点上。优选地,为了增加故 障的容错能力,可W为每个缓存服务器节点增加备份缓存服务器节点,主备缓存服务器之 间的数据是相同且同步的。
[0045] 基于上述分布式缓存方法,本发明还提供了一种分布式缓存系统,如图3所示,所 述系统包括: 分布设置模块10,用于根据关键字值的取值范围对缓存数据进行分组,获得若干个缓 存数据的分组,每个分组对应关联至少一缓存服务器;具体如步骤SlOO所述; 分布缓存模块20,用于根据待缓存数据的关键字值所属取值范围查找匹配的分组,将 所述关键字值对该分组关联的所有缓存服务器数量进行取模运算,找到匹配的缓存服务器 并对应存储所述待缓存数据;具体如步骤S200所述。
[0046] 进一步地,所述分布设置模块10包括: 分布关联单元,用于基于缓存数据的关键字值的取值范围将所述缓存数据划分为多个 分组,每个分组对应一个取值范围,且每个分组对应关联至少一台缓存服务器,根据不同分 组对应的取值范围及缓存服务器得到相应的配置表。
[0047] 进一步地,请参阅图6,图6为本发明提供的分布式缓存系统中分布缓存模块第一 实施例的结构框图,如图所示,所述分布缓存模块20包括: 第一分配单元21,用于通过外观服务器接收负载均衡器分配的待缓存数据的读写请 求; 第一分组单元22,用于根据所述读写请求的关键字值及所述配置表中的分组信息找到 相应匹配的分组; 第一取模单元23,用于根据所述读写请求的关键字值对该分组当前所具有的缓存服务 器数量进行取模,找到对应的缓存服务器并完成待缓存数据的读写请求。
[004引进一步地,所述的分布式缓存系统,还包括: 分组增加模块,用于当缓存服务器的容量达到限制时,添加新扩容的缓存服务器,将新 扩容的缓存服务器分配到新的分组中,并对应修改所述配置表的分组信息; 或缓存增加模块,用于当缓存服务器的容量达到限制时,将新扩容的缓存服务器分配 到原有分组中,并对应修改所述配置表的分组信息。
[0049] 进一步地,请参阅图7,图7为本发明提供的分布式缓存系统中分布缓存模块第二 实施例的结构框图,如图所示,所述分布缓存模块20包括: 第二分组单元24,用于根据待缓存数据的关键字值所属的取值范围,找到对应匹配的 分组; 第二取模单元25,用于将所述待缓存数据的关键字值对该分组关联的所有缓存服务器 数量进行取模运算,得到对应的取模运算结果; 缓存服务器匹配单元26,用于根据预先设置的不同取模运算结果与各个缓存服务器的 关联关系,找到与所述取模运算结果匹配的缓存服务器并对应存储所述待缓存数据。
[0050] 综上所述,本发明提供的一种分布式缓存方法及系统,通过根据关键字值的取值 范围对缓存数据进行分组,获得若干个缓存数据的分组,每个分组对应关联至少一缓存服 务器;根据待缓存数据的关键字值所属取值范围查找匹配的分组,将所述关键字值对该分 组关联的所有缓存服务器数量进行取模运算,找到匹配的缓存服务器并对应存储所述待缓 存数据;能够任意水平扩容,扩容方便,集群数据能均衡分布,带来了大大的方便,具有非常 大的商业价值。
[0051] 应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可 W根据上述说明加 W改进或变换,所有运些改进和变换都应属于本发明所附权利要求的保 护范围。
【主权项】
1. 一种分布式缓存方法,其特征在于,包括: A、 根据关键字值的取值范围对缓存数据进行分组,获得若干个缓存数据的分组,每个 分组对应关联至少一缓存服务器; B、 根据待缓存数据的关键字值所属取值范围查找匹配的分组,将所述关键字值对该分 组关联的所有缓存服务器数量进行取模运算,找到匹配的缓存服务器并对应存储所述待缓 存数据。2. 根据权利要求1所述的分布式缓存方法,其特征在于,所述步骤A具体包括: A1、基于缓存数据的关键字值的取值范围将所述缓存数据划分为多个分组,每个分组 对应一个取值范围,且每个分组对应关联至少一台缓存服务器,根据不同分组对应的取值 范围及缓存服务器得到相应的配置表。3. 根据权利要求2所述的分布式缓存方法,其特征在于,所述步骤B具体包括: B11、外观服务器接收负载均衡器分配的待缓存数据的读写请求; B12、根据所述读写请求的关键字值及所述配置表中的分组信息找到相应匹配的分组; B13、根据所述读写请求的关键字值对该分组当前所具有的缓存服务器数量进行取模, 找到对应的缓存服务器并完成待缓存数据的读写请求。4. 根据权利要求2所述的分布式缓存方法,其特征在于,在所述步骤B之后,还包括: C1、当缓存服务器的容量达到限制时,添加新扩容的缓存服务器,将新扩容的缓存服务 器分配到新的分组中,并对应修改所述配置表的分组信息; 或C2、当缓存服务器的容量达到限制时,将新扩容的缓存服务器分配到原有分组中,并 对应修改所述配置表的分组信息。5. 根据权利要求1所述的分布式缓存方法,其特征在于,所述步骤B具体包括: B21、根据待缓存数据的关键字值所属的取值范围,找到对应匹配的分组; B22、将所述待缓存数据的关键字值对该分组关联的所有缓存服务器数量进行取模运 算,得到对应的取模运算结果; B23、根据预先设置的不同取模运算结果与各个缓存服务器的关联关系,找到与所述取 模运算结果匹配的缓存服务器并对应存储所述待缓存数据。6. -种分布式缓存系统,其特征在于,包括: 分布设置模块,用于根据关键字值的取值范围对缓存数据进行分组,获得若干个缓存 数据的分组,每个分组对应关联至少一缓存服务器; 分布缓存模块,用于根据待缓存数据的关键字值所属取值范围查找匹配的分组,将所 述关键字值对该分组关联的所有缓存服务器数量进行取模运算,找到匹配的缓存服务器并 对应存储所述待缓存数据。7. 根据权利要求6所述的分布式缓存系统,其特征在于,所述分布设置模块包括: 分布关联单元,用于基于缓存数据的关键字值的取值范围将所述缓存数据划分为多个 分组,每个分组对应一个取值范围,且每个分组对应关联至少一台缓存服务器,根据不同分 组对应的取值范围及缓存服务器得到相应的配置表。8. 根据权利要求7所述的分布式缓存系统,其特征在于,所述分布缓存模块包括: 第一分配单元,用于通过外观服务器接收负载均衡器分配的待缓存数据的读写请求; 第一分组单元,用于根据所述读写请求的关键字值及所述配置表中的分组信息找到相 应匹配的分组; 第一取模单元,用于根据所述读写请求的关键字值对该分组当前所具有的缓存服务器 数量进行取模,找到对应的缓存服务器并完成待缓存数据的读写请求。9. 根据权利要求7所述的分布式缓存系统,其特征在于,还包括: 分组增加模块,用于当缓存服务器的容量达到限制时,添加新扩容的缓存服务器,将新 扩容的缓存服务器分配到新的分组中,并对应修改所述配置表的分组信息; 或缓存增加模块,用于当缓存服务器的容量达到限制时,将新扩容的缓存服务器分配 到原有分组中,并对应修改所述配置表的分组信息。10. 根据权利要求6所述的分布式缓存系统,其特征在于,所述分布缓存模块包括: 第二分组单元,用于根据待缓存数据的关键字值所属的取值范围,找到对应匹配的分 组; 第二取模单元,用于将所述待缓存数据的关键字值对该分组关联的所有缓存服务器数 量进行取模运算,得到对应的取模运算结果; 缓存服务器匹配单元,用于根据预先设置的不同取模运算结果与各个缓存服务器的关 联关系,找到与所述取模运算结果匹配的缓存服务器并对应存储所述待缓存数据。
【专利摘要】本发明公开了一种分布式缓存方法及系统,通过根据关键字值的取值范围对缓存数据进行分组,获得若干个缓存数据的分组,每个分组对应关联至少一缓存服务器;根据待缓存数据的关键字值所属取值范围查找匹配的分组,将所述关键字值对该分组关联的所有缓存服务器数量进行取模运算,找到匹配的缓存服务器并对应存储所述待缓存数据;能够任意水平扩容,扩容方便,集群数据能均衡分布,带来了大大的方便。
【IPC分类】H04L29/08
【公开号】CN105577806
【申请号】CN201511010950
【发明人】廖冬生
【申请人】Tcl集团股份有限公司
【公开日】2016年5月11日
【申请日】2015年12月30日
当前第3页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1