Redis中采用的是什么IO模型,是IO多路复用吗?有大佬知道吗?
全部评论

io多路复用,单线程reactor模式,会根据系统类型选择select/ poll/epoll
非阻塞io 不同的os 会有不同的io多路复用底层调用的不同api
是IO多路复用

肯定是啊
老版本是单线程io多路复用,新版本已经改成多线程阻塞io了
Redis6.0之后网络io用的reactor模式多路复用, 执行指令是单线程串行的。
是的
基于 epoll 的 io 多路复用
我记得好像是:使用IO多路复用,主线程检查Socket情况,调度多线程去读取Socket内容到用户空间的一个数组里面,然后等待这些线程读取完成之后(轮询查看每个元素是否完成),等到这个批次完成之后,执行批次读取到的命令,再在对应的数组写结果,然后再调度多线程将结果写道Socket缓冲区。
当时没有看源码,问的GPT,可能有错误。
是的
epoll模式的io多路复用

好像是单reactor单线程
小林coding里面有
相关推荐

点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 评论 收藏
分享