redis 的性能瓶颈在于哪里?

Redis不涉及I/O操作,因此设计为单线程是效率最高的!

那么,既然你知道既然Redis的性能和CPU无关,那你知道Redis的性能瓶颈在哪么?既然Redis的性能和CPU无关,那你知道Redis的性能瓶颈在哪么?"

一般在两个地方

其一是机器内存大小,内存大小关系到Redis存储的数据量

其二是网络带宽,这点我仔细说一下

Redis客户端执行一条命令分为四个过程:发送命令、命令排队、命令执行、返回结果

而其中发送命令+返回结果这一过程被称为Round Trip Time(RTT,往返时间)

Redis的客户端和服务端可能部署在不同的机器上。

例如客户端在北京,Redis服务端在上海,两地直线距离约为1300公里,那么1次RTT时间=1300×2/(300000×2/3)=13毫秒(光在真空中传输速度为每秒30万公里,这里假设光纤为光速的2/3),

那么客户端在1秒内大约只能执行80次左右的命令,这就和Redis的高并发高吞吐特性背道而驰啦!所以一般情况下,都是就近部署!

tags: Redis