三种Reactor模型理解
第一种 单Reactor单线程
selector除了接受OP_ACCEPT事件之外,还要接受处理accept之后channel的OP_READ事件等其他可能关心的事件
第二种 单Reactor多线程
还是一个selector处理channel的所有事件,但是channel除了OP_ACCEPT事件,其他事件的业务处理逻辑交由一个workerThreadsPool去处理
第三种 多Reactor多线程
业务逻辑处理部分采用多线程,此时mainReactor只接受处理OP_ACCEPT事件,当完成channel的accept之后将channel后续的其他事件交由subReactor去接受和处理,mainReactor和subReactor都维护着自己的selector
网友评论