微软的Garnet的安装学习以及与Redis的简单对比
安装方式
官网上面其实没有写如何安装garnet的
很多人见识用nuget的方式进行安装
我这边简单尝试了下也没看出来怎么用exe
没办法 只能学习 dockerfile 里面的内容在windows上面进行编译.
下载地址
https://codeload.github.com/microsoft/garnet/tar.gz/refs/tags/v1.0.0
需要注意里面的内容由多个 DOCKFILE 是很好的指导文件
需要再次说明的事,garnet 是基于.net开发的程序
编译必须有dotnet sdk 运行应该至少有 dotnet 的 runtime
为了简单期间, 这边都使用 dotnet sdk的方式
下载地址为:
https://dotnet.microsoft.com/zh-cn/download/dotnet/8.0
编译安装
必须先安装 dotnet sdk
然后查看 tar.gz 包里面的dockfile进行学习
Linux上面的为:
WORKDIR /source/main/GarnetServer
RUN dotnet publish -c Release -o /app --self-contained false -f net8.0
Windows上面的为:
WORKDIR /source/main/GarnetServer
RUN dotnet publish -c Release -o /app -r win-x64 --self-contained false -f net8.0
下载好tar包之后, 进入目录比如我这边:
C:\Users\Administrator\Downloads\garnet-1.0.0\main\GarnetServer
直接执行命令:
RUN dotnet publish -c Release -o /app -r win-x64 --self-contained false -f net8.0
会在:C:\app 产生安装文件, 二进制的文件为:GarnetServer.exe
注意配置文件的模板为:
C:\Users\Administrator\Downloads\garnet-1.0.0\libs\host\defaults.conf
比较重要的需要改的参数有:
"Port" : 3278,
"AuthenticationMode" : "Password",
"Password" : "Yourpassword",
注意复制过来之后,直接修改就可以了
执行命令为: 在 C:\app 执行
GarnetServer.exe --config-import-path garnet.conf
注意我本地的配置文件就是: C:\app\garnet.conf
可以使用 redis-cli 进行链接
也可以使用 redis-benchmark 进行简单测试.
需要说明我下面的对比是 redisWin7.0.5 的版本和 Garnet1.0.0的版本
Redis-benchmark
测试项目 |
garnet on windows |
时延 |
redis on Windows |
时延 |
PING_INLINE |
41876 |
0.612 |
56465 |
0.638 |
PING_MBULK |
42034 |
0.610 |
58685 |
0.475 |
SET |
40128 |
0.643 |
55005 |
0.735 |
GET |
41050 |
0.626 |
55617 |
0.528 |
INCR |
42936 |
0.603 |
55865 |
0.593 |
LPUSH |
43159 |
0.600 |
54141 |
0.651 |
SADD |
40306 |
0.637 |
53163 |
0.801 |
HSET |
42354 |
0.608 |
57770 |
0.704 |
总结
garnet的时延好像的确表优秀一点
但是跟redis比 他的吞吐量感觉还是稍微差一些.
可能是我选择的benchmark工具有问题, 但是也说明了一些问题.
garnet 还是需要优化的. 不知道产品兼容性如何.