2017-03-17 63 views
0

我们使用Redis作为队列,平均约有〜3k rps。但是,当我们检查instantaneous_ops_per_sec时,这个值始终高于预期,报告约20%,在这种情况下,报告约为每秒4k运算。Redis instantaneous_ops_per_sec高于实际吞吐量

为了验证这一点,我将MONITOR转储了大约10秒,并检查了传入命令的数量。

grep "1489722862." monitor_output | wc -l 

其中1489722862是时间戳。即使这个数字与队列中产生的数量和队列中消耗的数量相匹配。 这是一个主从redis集群设置。 instantaneous_ops_per_sec也占从站读取?如果不是,这个数字明显更高的另一个原因是什么?

回答

0

instantaneous_ops_per_sec指标是根据服务器最近采样的平均值计算得出的。最近的样本数量硬编码为STATS_METRIC_SAMPLES,编号为server.h

+0

对不起,我对此还不是很清楚。如果我总是选取最近的16个样本,那么总数如何总是高于MONITOR命令的“wc -l”? – sreeraag