Netty 4的多端口服务器?

时间:2013-11-07 07:27:55

标签: netty

我想在一个Netty应用程序中绑定两个服务器套接字(例如,端口8000,8001)。

我尝试合并DiscardServer和EchoServer示例进行测试。

但是在第一个服务器初始化代码中,

ChannelFuture f = bootstrap1.bind(port).sync();
f.channel().closeFuture().sync(); // <-- program blocks here

程序执行阻塞,因此第二个服务器初始化代码无法访问。

如何使用Netty 4.0启动两个不同的端口服务器?

3 个答案:

答案 0 :(得分:1)

只需评论该条款

f.channel().closeFuture().sync(); // <-- program blocks here

答案 1 :(得分:1)

我找到了关于监听多端口服务的答案

请阅读:Netty 4.0 on multiple ports with multiple protocols?

答案 2 :(得分:0)

谢谢大家!有效。只为别人,我不得不补充 f.channel()。closeFuture()。sync(); 在第二个bind()之后;

    ServerBootstrap b = new ServerBootstrap();
    b.group(bossGroup, workerGroup)
    .channel(NioServerSocketChannel.class)
    .childHandler(new HttpServerInitializer(sslContext));
    b.bind(4443).sync();

    ServerBootstrap b1 = new ServerBootstrap();
    b1.group(bossGroupNonSSL, workerGroupNonSSL)
        .channel(NioServerSocketChannel.class)
        .childHandler(new HttpServerNonSSL());
    ChannelFuture f = b1.bind(4080).sync();

f.channel().closeFuture().sync();