为什么会失败,为什么会犯错,如果你的想法是正确的,为什么经不起测试呢?
多路复用Selector也是Reactor;
疑惑观点一、bossGroup是负责接收请求,workGroup负责处理请求,两个合起来是一个Reactor;
观点二、 bossGroup与workGroup都是一个独立的Reactor;
理由:bossGroup负责接收连接,为每一个连接创建从线程,不仅接收也处理;
workGroup负责接收许多客户端的读写操作,为每个请求创建处理线程,不仅接收也处理;
解惑netty框架是一个主从Reactor多线程,这个地方理解不透彻
观点二正确!bossGroup是负责接收请求,Reactor的核心在于一个线程可以处理多个请求,代码核心是for循环
workGroup负责不同连接的读写请求,采用轮询,有数据到就开线程处理,没有数据就处理下一个;
只是分工明确,bossGroup负责连接,workGroup负责处理I/O请求;