在业务量剧增的今天,单台高速缓存服务器已经无法满足业务的需求, 而相 较于大容量 SSD 数据存储方案,缓存具备速度和成本优势,但也存在数据安全 性的挑战。为此搭建一个高速缓存服务器集群来进行分布式存储是十分必要的。
Hours 是一个派生自 Twitter 开源软件 twemproxy 的分布式缓存的中间件。 Hours 能充当 memcached 和 redis 协议的轻量级代理中间件,能用于高速缓存服 务器集群的搭建。该项目主要针对高速缓存服务器集群的搭建者和管理者以及使 用者。具备以下主要功能:
Hours 通过中间件实现实时数据冗余,以增强数据安全性,摆脱了 redis 主副同步过程中的性能问题。并提供强一致性和弱一致数据读写策略, 以满足不同数据响应和安全强度的需求。
Hours 除了兼容原版 twemproxy 提供的所有一致性 hash 算法外,还学习 redis3.0 集群功能中的 hash 槽概念,新增一个类似 hash 槽(命名为 manual_hash 方式)的数据切片方式。使得运维更加直观和可控。
Hours 在 manual_hash 分发策略下,支持平滑升级及容量动态伸缩。
Hours 在 manual_hash 分发策略下,对于 redis 的 mset 和 del 在大批量多
key 数据场景下,相比原版做大幅性能优化。
终上所述,Hours 已具备分布式缓存系统中间件的主要功能,目前此系统在 顺网科技 RTB 等项目中作为分布式缓存系统使用, 目前能支撑至少 30000/s 的 并发状态在 50ms 内的读写回复。
Hours 通过中间件实现实时数据冗余,以增强数据安全性,摆脱了 redis 主副同步过程中的性能问题。并提供强一致性和弱一致数据读写策略, 以满足不同数据响应和安全强度的需求。
Hours 除了兼容原版 twemproxy 提供的所有一致性 hash 算法外,还学习 redis3.0 集群功能中的 hash 槽概念,新增一个类似 hash 槽(命名为 manual_hash 方式)的数据切片方式。使得运维更加直观和可控。
Hours 在 manual_hash 分发策略下,支持平滑升级及容量动态伸缩。
Hours 在 manual_hash 分发策略下,对于 redis 的 mset 和 del 在大批量多
key 数据场景下,相比原版做大幅性能优化。
开源社区_项目简介.pdf(该资源已被下载452次)
开源社区_用户指南.pdf(该资源已被下载456次)
开源社区_系统搭建.pdf(该资源已被下载399次)
程序员手册(API设计).pdf(该资源已被下载456次)