nio是基于reactor模型来设计的,所以netty也是基于reactor模型的,reactor模型有以下三种
单线程reactor模型
单线程模型主要指的是有一个线程去做监听,注意这个单线程会对应到多个Selector上,每个Selector需要做所有IO事件
的监听,并且业务处理也是在该线程中。
多线程reactor模型
多线程模型主要指的是把监听链接和业务处理分隔开,这里的网络监听还是1个线程,业务处理有一个线程池
主从reactor模型
主从模型讲的是连接和业务处理都是线程池。
AbstractNioChanne和NioEventLoop是两个核心类
网友评论