Garnet 真比 Redis 快吗?

238 天前
 keakon

用 Docker 跑了下 redis-benchmark:

难道要用 C# 跑测试才能发挥 Garnet 的性能? https://microsoft.github.io/garnet/docs/benchmarking/results-resp-bench

4655 次点击
所在节点    Redis
15 条回复
bthulu
238 天前
我不信, 视频发来看看
hez2010
238 天前
我也跑过,用的 mentier_benchmark ,同样是 redis 自己出品的 benchmark 工具。

单线程:

![single]( )

多线程:

![multi]( )

无论单线程还是多线程 garnet 都比 redis 更快。
qweruiop
238 天前
我们有个新项目已经迁移到 garnet 了,是比 redis 快。。。
povsister
238 天前
@hez2010
这数据看起来有点顶啊
lsk569937453
238 天前
https://github.com/lsk569937453/rcache

用 rust 实现的 redis ,用 redis-benchmark 测试,4 核 8G 下,rcache 的 tps 是 redis 的两倍。我这还是简单的直接用全局锁一个 Map ,不知道 garnet 用的什么黑科技。

缺点就是 rcache 多线程下 cpu 几乎能跑满,而 redis 的 cpu 一直稳定在 100%左右(这就是单线程的魅力吗。。。)
sujin190
238 天前
@hez2010 没懂你这是服务端多线程还是测试工具多线程,否则就算单核也不可能这么低吧,话说咱要测的是服务端性能吧,而且差距这么大 128 核心?
matrix1010
238 天前
hez2010
238 天前
@sujin190 单线程的测试设置了 pipeline=1 ,意味着一次请求返回之后才会进行下一次请求。而多线程的 pipeline 设置的 1024 ,能够充分利用计算机资源。
qcbf111
238 天前
c#还是牛逼呀,unity 好像能升级到最新版.net 就好了
keakon
238 天前
@hez2010 加了 -P 1024 后,分别是 218w 、68w 和 80w ,差距小了一点。。
sujin190
238 天前
@hez2010 话说似乎 garnet 是多核多线程的吧,redis 似乎是单线程的,应该是负载一样的来比吧
chenqh
238 天前
但是一般 redis 的性能就够了吧,而且因为 redis 处理逻辑上是单线程,所以可以确实不会因为什么 lock 问题导致数据出现问题.
wxf666
237 天前
@hez2010 #8 如果 8 线程访问 Redis ,每个线程 pipeline 都是 1 。这算啥?
hez2010
237 天前
@wxf666 我测的单线程是 1 client 1 thread 1 concurrency 1 pipeline 的。
haython
237 天前
@sujin190 为什么要负载一样来比?就是要比极限啊

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1036125

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX