【问题标题】:Netty - Initiating new connection with the same listening address as a bound server channelNetty - 使用与绑定服务器通道相同的侦听地址启动新连接
【发布时间】:2012-05-07 10:07:27
【问题描述】:

我有一个绑定的服务器通道,该通道当前正在本地地址“x”处接受连接。我现在需要启动到远程地址“y”的连接,但我也需要我的本地监听地址为“x”。使用本地通道工厂和本地地址时,当我尝试使用本地地址 = 'x' 建立新的客户端连接时,出现“地址已绑定”错误。这是有道理的。

所以我的下一条路线是尝试找到一种从服务器通道创建新的子连接的方法,但这最终导致 netty 内部代码的深度太深,似乎是一条糟糕的路线。我记得之前看到一个关于本地客户端连接的错误。

  • 这只是本地频道的错误吗?
  • 是否可以在 Netty 中从绑定地址发起连接?

谢谢, 丹尼尔

【问题讨论】:

    标签: jboss netty


    【解决方案1】:

    你在写代理吗?如果是这样,这是一个网络example app

    请注意,您必须为客户端和服务器设置不同的通道工厂。

        // Configure the bootstrap.
        Executor executor = Executors.newCachedThreadPool();
        ServerBootstrap sb = new ServerBootstrap(
                new NioServerSocketChannelFactory(executor));
    
        // Set up the event pipeline factory.
        ClientSocketChannelFactory cf =
                new NioClientSocketChannelFactory(executor);
    

    【讨论】:

    • 不,我不是在写代理,我的问题是新连接的本地监听地址与服务器通道的绑定监听地址相同。示例中的情况并非如此。
    猜你喜欢
    • 1970-01-01
    • 2018-04-05
    • 1970-01-01
    • 2019-02-19
    • 2019-09-25
    • 2015-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多