Umem-cache 是一个用户空间键值对缓存开源项目,代码托管于 GitHub,由开发者 imchuncai 发布,目标是打造’全世界最好’的缓存系统。在基于 Zipf 分布且键值对大小不超过 1KB 的基准测试中,其命中率较 Memcached 和 Redis 高出 10%,命中吞吐量高出 50%。功能特性方面,该项目支持强一致性,缓存数据可与后端数据库完全同步,避免读到旧数据;内置反缓存击穿机制,热键首次进入缓存时仅允许一个连接执行缓存工作,减轻后端数据库压力。内存管理上,项目通过移动键值对存储位置实现内存紧凑化,避免碎片化问题,并对包括哈希表在内的内存使用进行精确控制,哈希表大小随键值对数量动态调整。并发模型采用无锁多线程设计,除主线程和配置指定的工作线程外不创建其他线程,性能不会随线程数量增加而下降。安全方面提供可选 TLS 配置,采用 mTLS 双向身份验证;同时提供基于 Raft 共识算法的可选集群模式,提供一致性与可用性保证。键和值均支持任意字节数组,单例模式下键长度上限为 255 字节,集群模式下为 247 字节。
事件分析
核心观点:缓存市场由 Redis 主导多年,新项目以强一致加无锁设计切入,技术亮点之外,生态与生产验证才是成败关键。
原文链接:V2EX 分享发现

评论前必须登录!
立即登录 注册