hez2010
267 天前
简单在我自己的电脑上跑了一下 memtier_benchmark:
memtier_benchmark -t 4 -c 50 --pipeline=1024 -n 1000000
Redis:
ALL STATS
============================================================================================================================
Type Ops/sec Hits/sec Misses/sec Avg. Latency p50 Latency p99 Latency p99.9 Latency KB/sec
----------------------------------------------------------------------------------------------------------------------------
Sets 408346.45 --- --- 46.40698 42.23900 66.04700 70.14300 31458.55
Gets 4083419.55 18668.12 4064751.43 46.35596 42.23900 66.04700 70.14300 159685.06
Waits 0.00 --- --- --- --- --- --- ---
Totals 4491766.00 18668.12 4064751.43 46.36059 42.23900 66.04700 70.14300 191143.62
Garnet:
ALL STATS
============================================================================================================================
Type Ops/sec Hits/sec Misses/sec Avg. Latency p50 Latency p99 Latency p99.9 Latency KB/sec
----------------------------------------------------------------------------------------------------------------------------
Sets 1009126.20 --- --- 18.53643 17.79100 29.69500 35.58300 77741.95
Gets 10091151.04 91566.19 9999584.85 18.51609 17.79100 29.69500 35.58300 396130.24
Waits 0.00 --- --- --- --- --- --- ---
Totals 11100277.24 91566.19 9999584.85 18.51794 17.79100 29.69500 35.58300 473872.19
确实 Garnet 无论是吞吐量还是延时都碾压了 Redis 。
哪怕设置 --pipeline=1 让 benchmark 跑完一个请求之后再发下一个请求的这种利好 redis 的单线程测试场景,garnet 一样跑出了比 redis 更好的成绩。