Garnet 是 Microsoft Research 推出的一种新型远程缓存存储,其设计速度极快、可扩展且延迟低。 Garnet 在单个节点内是线程可扩展的。它还支持分片集群执行、复制、检查点、故障转移和事务。它可以在主内存以及分层存储(例如 SSD 和 Azure 存储)上运行。 Garnet支持丰富的API接口和强大的可扩展性模型。
Garnet 使用 Redis 的 RESP 作为其主要线路协议。因此,人们可以将 Garnet 与大多数编程语言中可用的未经修改的 Redis 客户端一起使用,例如 C# 中的 StackExchange.Redis。与其他开源缓存存储相比,您可以获得更好的性能、延迟、可扩展性和耐用性功能。
下载地址:https://github.com/microsoft/garnet/releases
选择 win-x64-based-readytorun.zip
解压后,如果系统未安装 .NET8 运行时,则运行时会报错。
C:\Users\chenjing\Desktop\win-x64-based-readytorun>.\GarnetServer.exe
You must install .NET to run this application.
如果只是想在本地做测试,不想部署 .NET 8,可以使用下面介绍的 Garnet Assistant 软件,它是 Garnet GUI管理软件,并且自带一个最新版的 Garnet 服务,可以非常方便的进行本地测试。
这时我们需要先去安装 .NET8,下载地址:https://dotnet.microsoft.com/zh-cn/download/dotnet/8.0
选择.NET 运行时 8.x
安装好 .NET 后,下一步就可以直接运行了:
PS C:\Users\chenjing\Downloads\win-x64-based-readytorun> .\GarnetServer.exe
_________
/_||___||_\ Garnet 1.0.5 64 bit; standalone mode
'. \ / .' Port: 3278
'.\ /.' https://aka.ms/GetGarnet
'.'
* Ready to accept connections
上面运行的Garnet未指定配置文件,所以使用的全部都是默认配置,默认配置文件参考Github,地址为:https://github.com/microsoft/garnet/blob/main/libs/host/defaults.conf
如果你要修改Garnet启动时的配置,例如端口号,绑定的IP地址等,可以复制一份默认配置,然后修改里面的对应配置项,最后在启动Garnet的时候指定配置文件即可。例如:
.\GarnetServer.exe --config-import-path .\my-defaults.conf
我们可以使用任意的Redis客户端软件连接进行测试(Garnet和大部分Redis命令是兼容的),这里推荐一个Redis GUI软件,Redis Assistant,下载地址:https://www.redisant.cn/
当然,也有Garnet专用的管理软件,Garnet Assistant,下载地址:https://www.redisant.cn/garnet
下面是使用 Garnet Assistant 连接后的效果
如果只是想在本地做测试,不想部署 .NET 8,可以使用 Garnet Assistant 自带的 Garnet 服务,在连接页选择 Garnet Server 按钮,然后设置端口号,点击启动按钮即可。