1.Redis是基于单线程的,Redis效率比较高,由于Redis是基于内存操作,所以CPU不是性能瓶颈,机器的内存和宽带才是Redis的瓶颈。
2.为什么Redis为单线程还那么快?
(1)多线程涉及到cpu之间的切换,CPU的切换会造成资源的浪费,所以多线程并没有单线程快;
(2)存储空间操作效率,CPU读取速率>内存读取速率>硬盘读取速率,Redis为单线程,只需要一个CPU执行,读取速率更快;
(3)redis所有的数据都存放在内存中,所以单线程去操作速率最高,多线程需要上下文切换,对于内存来说,如果没有上下文切换效率就是最高的,多次读写都是在一个CPU上的,基于内存来说,这个就是最佳方案。