2.3.1 Redis的性能瓶颈
Redis是基于内存操作的,CPU不是redis的性能瓶颈,Redis的性能瓶颈是什么呢?
服务器的内存服务的带宽
Redis为单线程,6.0版本后增加了多线程,新增的多线程部分只是用来处理网络网络数据的读写与协议解析,执行命令仍然是单线程
为什么使用多线程?
2.3.2 单线程问题
能使用单线程,为什么要用多线程呢?
单线程可以忽略多线程间的线程切换,锁定释放拿取消耗的时间
核心:
redis将所有的数据都是放在内存中去操作的,使用单线程就是最快的,多线程(CPU中会产生上下文切换,对于内存来说,如果没有上下文切换,效率就是最高的)时间会产生线程之间的切换问题,这是一个耗时的过程