微软开源远程缓存存储系统 Garnet:基于 .NET 技术栈、支持接入 Redis 客户端

微软研究院开源了名为 Garnet 的远程缓存存储系统,据称拥有强大的性能(高吞吐量和低延迟)、可扩展性、存储、恢复、集群分片、密钥迁移和复制功能,并支持接入现有的 Redis 客户端。

Garnet 核心优势

  • Garnet 采用流行的 RESP 线路协议,因此大多数用户可以不作任何修改、就直接通过大多数编程语言编写的 Redis 客户端直接接入 Garnet。

  • Garnet 通过多条客户端连接与小批量形式提供更好的可扩展性与吞吐量,帮助大型应用程序和服务节约运行成本。

  • Garnet 在第 99 及第 99.9 百分位上表现出更好的客户端延迟水平,更高比例的稳定性表现对于现实场景而言至关重要。

  • Garnet 基于最新.NET 技术,具有跨平台、可扩展和现代化等特点。它在设计上易于开发与调整,且不致牺牲常见场景下的性能水平。通过利用.NET 丰富的库生态来扩展其 API,并提供开放的优化机会。凭借对.NET 的充分发掘,Garnet 在 Linux 和 Windows 平台上均表现出顶尖性能。

可以看到,Garnet 的核心优势在于优异的可扩展性和吞吐量,以及对客户端会话数增加情况下的低延迟表现。经过基准测试,Garnet 与其他几种领先的开源缓存存储方案对比,显示出了它在处理大量客户端连接和大数据量时更加高效稳定。

此外,Garnet 支持多种 API 功能,如原始字符串的读写、复杂数据类型的处理等,满足了不同场景下的应用需求。

△ Garnet 整体架构

据介绍,Garnet 是微软研究院多年工作的成果。它从 2018 年完成的名为 FASTER 的初步工作发展而来的,FASTER 是一个嵌入式键值数据库,旨在证明可以获得比现有系统更好的性能。

在 2021 年大流行期间,微软研究院决定根据微软在现实世界中的需求,在这项技术的基础上进行改进,最终形成了 Garnet。微软表示,它已经在多个地方部署了 Garnet,包括 Windows 与 Web 体验平台、Azure 资源管理器和 Azure 资源图。

延伸阅读:开源内存数据库 DragonflyDB 1.0 正式 GA,可替代 Redis

猜你喜欢

转载自www.oschina.net/news/283934/ms-research-garnet-cache-store