Как настроить дочернюю группу с помощью NettyServerCustomizer?

Я обновил версию netty и обнаружил, что метод начальной загрузки TcpServer был удален из предыдущей версии. Я не могу понять, как преобразовать мой существующий код, используя новую библиотеку netty.

factory.addServerCustomizers((NettyServerCustomizer) httpServer -> {
                    httpServer
                    .tcpConfiguration(tcpServer ->
                            tcpServer
                                    .bootstrap(serverBootstrap ->
                                            serverBootstrap
                                                    .group(parentGroup, childGroup)
                                                    .channel(NioServerSocketChannel.class)
                                    )
                    );

Я могу сделать httpServer.runOn(parentGroup), но не могу понять, как с этим настроить дочернюю группу. Любые идеи?

Альтернативные WebSockets для netty/java: удвоение пропускной способности небольших сообщений
Альтернативные WebSockets для netty/java: удвоение пропускной способности небольших сообщений
Этот пост - краткая презентация netty-websocket-http1 - альтернативной netty/java реализации RFC6455 - протокола WebSocket.
0
0
15
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете использовать приведенный ниже код в качестве замены:

LoopResources loop =
         new LoopResources() {
             @Override
             public EventLoopGroup onServer(boolean useNative) {
                 return childGroup;
             }

             @Override
             public EventLoopGroup onServerSelect(boolean useNative) {
                 return parentGroup;
             }
         };

httpServer.runOn(loop, false);

Это если вы хотите использовать какую-то конкретную реализацию для EventLoopGroup.

Если вам нужно просто использовать NIO, вы можете использовать код ниже:

LoopResources loop = LoopResources.create("my-loop", parentGroupNumThreads, childGroupNumThreads, true);

server.runOn(loop, false);

Другие вопросы по теме