多路IO复用模型?
来源:4-1 Redis简介
qq_简简单单_132
2019-05-22
IO多路复用模型是:
多个客户端端发送socket数据过来,服务器不能保证客户端发送的数据一次性就帮所有数据发送过来,所以socket发送过来的数据可能是经过多次才能完成数据的发送。 那么就会存在一个情况,redis本身是一个单线程的,所以redis不采用IO复用模型,那么就会等待某一个socket数据全部发送完成,这样就会造成后续socket的阻塞,但是引入了IO复用模型之后,那么会有一个集合保存多个socket请求,并通过事件监听的模式来扫描这个socket集合,然后如果某一socket已全部发生了数据传输,那么就将这个socket请求取出来,交给对应的redis处理器去处理执行? 是否是这么理解?
写回答
1回答
-
翔仔
2019-05-23
同学好,感觉同学这里说的是Redis在发现操作系统不支持epoll等能力的时候用的select模式,而Redis多数情况下优先选择使用epoll,具体可以看看这个
https://blog.csdn.net/wxy941011/article/details/80274233
032019-05-23
相似问题