首页 > 编程语言 > 详细

redis的单线程架构

时间:2019-03-12 20:38:22      阅读:167      评论:0      收藏:0      [点我收藏+]

redis很快,官网给出的数据是10万/秒,当然是跟机器的配置有关系的,redis是使用单线程架构和IO多路复用来实现高性能

redis单线程处理命令的机制

redis客户端和服务端的通信大致可分为三个步骤

1.发送命令;2.执行命令;3返回结果

当多个redis命令同时到达服务器端时,redis由于单线程的机制会导致命令不会立即被执行,而是进入一个队列中,然后逐个被执行,执行顺序跟队列中的命令顺序有关

这样有关好处就是不会产生并发问题

一般来说单线程处理能力要比多线程差,但是redis的单线程很快主要归结于三点

1.redis是纯内存的访问,内存的响应时间一般远远高于磁盘

2.非阻塞IO,redis使用epoll作为IO的多路复用实现技术

3.单线的避免了线程切换和竞争的消耗,也避免了各种锁的问题

根据redis的单线程架构特性可知,如果某个命令执行时间过长,将会阻塞其他命令 ,这对redis是致命的。

redis的单线程架构

原文:https://www.cnblogs.com/bigyu/p/10519376.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!