我对Netty有疑问。 似乎它使用boss eventLoop继续接受连接,而另一个worker eventLoop继续进行数据I / O.
源代码显示一个eventLoop将重复调用select / poll / epoll。所以会有多个eventLoop刻录CPU。为什么netty只能使用一个eventloop来处理服务器侦听套接字和接受套接字?
答案 0 :(得分:1)
有一种名为SEDA的架构。 Boss eventloop的好处是:用于接受连接的线程不会被用于从套接字读取数据然后在处理程序中执行工作的IO线程阻止。您还可以使用ExecutionHandler来帮助eventloop。 Netty正在改变和改进线程建模。在Netty 4中经历了很多变化。