如何引导netty频道为;“奴隶”;应用

如何引导netty频道为;“奴隶”;应用,netty,Netty,我想实现一个netty“slave”应用程序,它监听传出websocket连接上的请求。因此,在引导过程中,应用程序将: 打开到远程服务器的ws连接 使用“boss”事件循环侦听ws连接上的命令 处理“工作”事件循环上的输入命令 我的问题是如何引导通道-为了方便起见,我宁愿使用引导对象(我的意思是与手动配置通道相比),但是: 需要本地侦听套接字 只有一个eventloop 不能在包外进行子类化,ServerBootstrap/Bootstrap是最终的 关于如何在不复制一堆现有的*引导代码的情况

我想实现一个netty“slave”应用程序,它监听传出websocket连接上的请求。因此,在引导过程中,应用程序将:

  • 打开到远程服务器的ws连接
  • 使用“boss”事件循环侦听ws连接上的命令
  • 处理“工作”事件循环上的输入命令
  • 我的问题是如何引导通道-为了方便起见,我宁愿使用引导对象(我的意思是与手动配置通道相比),但是:

  • 需要本地侦听套接字
  • 只有一个eventloop
  • 不能在包外进行子类化,ServerBootstrap/Bootstrap是最终的

  • 关于如何在不复制一堆现有的*引导代码的情况下引导频道,有什么建议吗?

    我最终通过将EventExecutorGroup直接传递到管道-我在api文档中不知何故遗漏了这一点

    从javadocs:

    静态最终EventExecutorGroup组=新的DefaultEventExecutorGroup(16);
    ...
    ChannelPipeline=通道管道();
    addLast(“解码器”,新的MyProtocoldCoder());
    addLast(“编码器”,新的MyProtocolEncoder());
    //告诉管道运行MyBusinessLogicHandler的事件处理程序方法
    //在与I/O线程不同的线程中,以便I/O线程不会被
    //一项耗时的任务。
    //如果您的业务逻辑是完全异步的,或者完成得非常快,那么您就不会
    //需要指定一个组。
    addLast(组“handler”,新的MyBusinessLogicHandler());
    
    我想我不明白您试图做什么,以及为什么引导在这里不起作用。我想创建一个(长期存在的)websocket客户端,根据服务器的响应消息同时执行阻止操作。