IO/NIO/Netty的线程模型

2018-07-22  本文已影响0人  宫宇祁

IO的线程模型

如果有多个客户需要点餐(客户端连接)的话就需要有多个服务员(线程)去为它服务

NIO的线程模型

NIO较之IO的改进就是:服务员(Thread)+Selector选择器就可以为多个客户(clent端)服务(单线程的)

Netty的线程模型

如果我们的餐厅规模扩大了,我们就需要雇佣多个服务员(多线程Thread),

netty需要两个线程池,一个是boss 一个是worker,boss就是上图中的port、它的主要功能是负责clent的连接(即监听客户端)、以及要将客户分配给那个服务员(clent分配给哪个thread去处理即客户端的分发轮训去处理)。workder线程中的线程就是负责具体clent客户的需求(即具体的业务逻辑处理clent端的读写)

线程池的最大连接数 就是2的31次幂-1

默认初始线程数是cpu的核心数*2

上一篇 下一篇

猜你喜欢

热点阅读