理论上Netty 也支持单线程、多线程模型、主从多线程模型 模型,但从实际测试上来看,并不实际支持主从多线程模型
EventLoopGroup boss = new NioEventLoopGroup(4); //boss线程池, 4个线程
EventLoopGroup worker = new NioEventLoopGroup();//工作线程池,数量为CPU数*2
try {
ServerBootstrap bootstrap = new ServerBootstrap();
bootstrap.group(boss, worker).channel(NioServerSocketChannel.class)
.childHandler(new ChannelInitializer<SocketChannel>() {
@Override
public void initChannel(SocketChannel channel) throws Exception {
}
})
.option(ChannelOption.SO_BACKLOG, 128)
.childOption(ChannelOption.SO_KEEPALIVE, true);
ChannelFuture ch = bootstrap.bind(14167).sync();
如果程序运行起来,我们期待的是有4个boss 线程, 但实际来看却只有一个线程
我们不断的用新的客户端连接服务端,但boss 线程数始终为1