Netty bootstrap 与老板组或仅与工人 EventLoopGroup
Netty bootstrap with boss group or with just with workers EventLoopGroup
书本和例子表明我们应该在引导服务器时使用所谓的boss
组和worker
组:
serverBootstrap.group(bossGroup, workerGroup);
然后,在基于 Netty 的 Vert.x 中,我们有:
bootstrap.group(availableWorkers);
这意味着(afaiu)所有工人都将以相同的方式工作,因此没有老板只处理传入的连接。
这是为什么?
大多数时候使用同一个组来接受和处理已接受的连接效果很好,因此可以节省一些线程。您可能不想这样做的唯一情况是,如果已接受连接的处理逻辑将使 EventLoops 非常繁忙,以至于您无法足够快地接受。所以最好是在开始时使用同一个组,然后在需要时切换到两个。
书本和例子表明我们应该在引导服务器时使用所谓的boss
组和worker
组:
serverBootstrap.group(bossGroup, workerGroup);
然后,在基于 Netty 的 Vert.x 中,我们有:
bootstrap.group(availableWorkers);
这意味着(afaiu)所有工人都将以相同的方式工作,因此没有老板只处理传入的连接。
这是为什么?
大多数时候使用同一个组来接受和处理已接受的连接效果很好,因此可以节省一些线程。您可能不想这样做的唯一情况是,如果已接受连接的处理逻辑将使 EventLoops 非常繁忙,以至于您无法足够快地接受。所以最好是在开始时使用同一个组,然后在需要时切换到两个。