Redis03——Redis之单线程+多路IO复用技术

Redis 是单线程+多路IO复用技术

多路复用:使用一个线程来检查多个文件描述符的就绪状态

     如果有一个文件描述符就绪,则返回

     否则阻塞直到超时

     得到就绪状态后进行真正的操作可以在同一个线程里执行,也可以启动线程执行(线程池)

     本质上是没有阻塞的

  • 阻塞lO(串行):给女神发一条短信, 说我来找你了,然后就默默的一直等着 女神下楼,这个期间除了等待你不会做其他事情,属于备胎做法.
  • 非阻塞IO:给女神发短信,如果不回,接着再发,一直 发到女神下楼,这个期间你除了发短信等待不会做其他事情,属于专-做法.
  • IO多路复用:是找一个宿管大妈来帮你监视下楼的女生,这个期间你可以些其他的事情.例如可以顺便看看其他妹子,玩玩王者荣耀,上个厕所等等.

IO复用又包括select, poll, epoll模式那么它们的区别是什么?

  • select:

  一个女生下楼, select大妈都不知道这个是不是你的女神,她需要一个一 个 询问,并且select大妈能力还有限,最多一次帮 你监视1024个妹子

  • poll:

  poll大妈不限制盯着女生的数量,只要是经过宿舍楼门口的女生,都会帮你去问是不是你女神

  • epoll:

  epoll大妈不限制盯着女生的数量,并且也不需要一个- 个去问.那么如何做呢? epol1大妈会为每个进宿舍楼的女生脸上贴上一一个大字条,上面写上女生自己的名字,只要女姓下楼了,   eoll大妈就知道这个是不是你女神了,然后大妈再通知你.

原文地址:https://www.cnblogs.com/zly123/p/11729034.html