VicroCode
让代码创造价值
VicroCode是一个轻量级代码在线发布、交易平台,开箱即用,免部署、免服务器、免备案,支持接入智能体、通用管理系统、游戏等多种项目
稍候片刻,您可先学习AI编程手册
正在加载中...

市场信息

[程序员] [开源项目] Umem-cache:键值对缓存

项目地址 Umem-cache Umem-cache 是一个用户空间键值对缓存。它的目标是做到全世界最好。 在基于 Zipf 分布且键值对大小在 1KB 以内的基准测试中,Umem-cache 的命中率比 Memcached 和 Redis 高 出 10%,命中吞吐量高出 50%。

www.v2ex.com · 2026-09-29T05:54:51+00:00

项目地址 /ai-market-guide/ Umem-cache Umem-cache 是一个用户空间键值对缓存。它的目标是做到全世界最好。

在基于 Zipf 分布且键值对大小在 1KB 以内的基准测试中,Umem-cache 的命中率比 Memcached 和 Redis 高 出 10%,命中吞吐量高出 50%。特性 强一致 缓存数据能够与后端数据库保持完全同步。

换言之,你不会取到旧数据。反缓存击穿 反缓存击穿是内置的。

缓存击穿是指当某个热键首次进入缓存时,每个人都争相将其缓存,从而给后方数据库带来压力。反缓存击 穿通过仅允许一个连接执行缓存工作来避免这种情况。

内存碎片化 我们没有内存碎片化问题,我们会通过移动键值对的存储位置来紧凑化内存布局。严格控制内存使用 我们充分尊重用户的配置。

我们对内存使用(包括哈希表的内存占用)进行精确控制,增加键值对的数量 不会导致额外的内存消耗,并且哈希表的大小是根据管理的键值对的数量动态调整的。多线程 我们提供多线程配置以充分发挥机器的性能。

除了主线程和配置指定的工作线程外,我们不会创建其他线程。无锁 我们的多线程方案是无锁的,不存在随着线程数量上升反而导致性能下降的情况。

TLS 我们提供了可选的 TLS 配置,该配置使用 mTLS 双向身份验证。集群 我们提供可选的集群配置,它基于 raft 共识算法实现,提供一致性和可用性保证。

任意的键和值 键和值可以是任意字节数组,除了在使用单例时键的长度需要限制在 255 字节以内,使用集群时键的长度需要限制在 247 字节以内。

返回 AI 市场导读

来源:v2ex.com