环境- 净值4.1.16。 Java 8
创建了一个服务器,定义了2个老板和8个工作线程以及100个业务处理程序线程,
EventLoopGroup bossGroup = new NioEventLoopGroup(2);
EventLoopGroup workerGroup = new NioEventLoopGroup(8);
final EventExecutorGroup handlerThread = new DefaultEventExecutorGroup(100);
ServerBootstrap bootstrap = new ServerBootstrap();
bootstrap.group(bossGroup, workerGroup);
bootstrap.channel(NioServerSocketChannel.class);
bootstrap.childHandler(new ChannelInitializer<SocketChannel>() {
@Override
protected void initChannel(SocketChannel ch) throws Exception {
ChannelPipeline pipeline = ch.pipeline();
pipeline.addLast(new NettyDecoder());
pipeline.addLast(new NettyEncoder());
pipeline.addLast(handlerThread,"serverHandler",new ServerHandler());
}
});
问题是我在这种配置下无法获得性能。我的服务器仅在1秒内处理35个请求。
如果我更改boss线程= 1和worker线程= 1,那么响应大小也相同。在这种情况下,也可以处理35个请求。
我担心线程是否正常工作?
问题是针对1个工作线程,它可以处理35个请求,因此我已经配置了8个工作线程,因此它应该在1秒内处理36 * 8 = 288个请求。
我的网民很新。请帮助。预先感谢