在Netty服务器上,如何创建出站连接然后像传入连接一样继续使用它们?

时间:2015-04-16 14:40:09

标签: netty

我正在开发一个系统,在这个系统中,多个服务器需要相互连接并交换数据。我想在每个服务器中创建一个服务器套接字,接受新的传入连接,但同时启动一些到其他服务器的出站连接。

一旦建立了连接,无论是入站连接还是出站连接,我都希望使用它而不区分谁是发起者。毕竟,TCP连接是对称的,一旦建立......

有没有办法用Netty做到这一点? [我是新手......]看看ServerBootstrap,我不知道如何打开出站连接并且"附加"它使我在ServerBootstrap中指定的处理程序用于所有连接。

当然我只能打开到所有服务器的传出连接,但我觉得每个服务器之间只有一个连接就更优雅了。

1 个答案:

答案 0 :(得分:0)

您是否考虑过额外的引导程序?:

Bootstrap outboundBootstrap = new Bootstrap();
outboundBootstrap.group(workerGroup)
            .channel(EpollSocketChannel.class)
            .handler(new MyInit());

然后打开连接:

InetSocketAddress address =..;ChannelFuture future = outboundBootstrap.connect(address);