io类型:
阻赛io (bio),依然需要io操作,从内核读取
非阻赛io(nio),依然需要io操作,从内核读取
Io复用(nio),依然需要io操作,从内核读取
信号驱动io(nio),依然需要io操作,从内核读取
异步io(aio),AIO是真正意义上的异步非阻塞IO模型,数据已经从内核拷贝到用户空间
异步实现有2个方式:
第一个方式: 需要一个1号主线程 循环处理 产品 redis.memache,libevent,node.js(对这个最典型,最好理解一个)
第二个方式:aio ,依靠内核实现
单reactor多线程模式
Redis:
单work线程 epoll_wait 业务处理
多io线程:read write操作