栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

分布式缓存系统-KV型

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

分布式缓存系统-KV型

Gitee
在云计算时代,全球的数据存储量以平均每年30%的速度不断增长,如何有效提高数据的访问速度成为研究的热点内容。缓存系统作为应对热数据访问的有效补充,能够及时保存最近上传的热数据,从而大大提升系统的响应速度,在数据存储方面的重要性逐渐增大。
本项目旨在实现一款基于C++的分布式缓存系统,能够具有基础的数据读写、分布获取、状态上报功能,同时具备容灾能力,使系统长时稳定工作。为此,项目组设计了多Master、多Cache Server以及若干Client并存的分布式缓存架构,并具备以下功能:
(1)单个Cache Server采用LRU机制保存指定数量的Key,并主动淘汰多余的Key,同时使用基于epoll和线程池的架构高并发地进行数据收发;
(2)Client端能生成随机数据并写入Cache Server或拉取keylist文件中的key并向Cache Server请求对应数据,同时Cache Server收到数据将数据进行备份处理(发送到备份Cache Server);
(3)Client端在本地缓存获取Cache Server失败或数据超时的情况下,会向Master请求分布,拉取最新的Cache Server节点分布信息。
(4)Client和Cache Server使用一致哈希算法实现负载均衡,避免热点问题。
(5)Master端读取多个Cache Server的心跳包。
(6)Cache Server扩容功能:Master探测到新的Cache Server心跳包,向所有Cache Server发送扩容指令和新的节点分布列表,各Cache Server节点得到分布列表后通过一致哈希算法将数据转移到新的Cache Server。
(7)Cache Server缩容功能:Master向Cache Server发送缩容指令和新的节点分布列表,Cache Server通过一致哈希算法将数据转移到其他Cache Server,最后自动关闭。
(8)Cache Server容灾功能:当Master探测到某个节点没有发送心跳包后,向其他节点发送节点更新指令和新的节点分布列表,Cache Server收到新的节点分布列表后将所有备份数据通过一致哈希算法转移到其各自新的对应Cache Server上去。
(9)Mater容灾功能:设计多个Master,当其他Master检测到主Master停止工作后,主动通知所有Cache Server节点连接到新的Master,并接替完成Master功能。
(10)日志功能,按照Verbose、Debug、Info、Warn、Error、fatal等不同等级设计日志规范,并在程序中增加了写日志的功能。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/759492.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号