nested - Netty 嵌套管道/多路复用

标签 nested netty pipeline multiplexing

我对 Netty 很陌生,但是当多个协议(protocol)(例如 P1 和 P2)封装在另一个协议(protocol)中时,如何在 Netty 4.x 中实现一个案例?

              +-------------+
              |   decoder   |
              +-------------+
              |   encoder   |
              +-------------+
              |    muxer    |
              +-------------+
              |   demuxer   |
              +---+------+--+
                  |      |
                  |      |
           +------+      +------+
           |                    |
           |                    |
           v                    v
    +-------------+      +-------------+
    | P1 decoder  |      | P2 decoder  |
    +-------------+      +-------------+
    | P1 encoder  |      | P2 encoder  |
    +-------------+      +-------------+
    | P1 handler  |      | P2 handler  |
    +-------------+      +-------------+

有没有办法创建嵌套管道,以便 decoder<->encoder<->muxer<->demuxer作为主管道会根据解复用器的决定沿 P1 或 P2 管道发送数据吗?

或者也许有一种方法可以用自己的管道以某种方式创建(为了清楚起见)“子 channel ”?

最佳答案

尚不支持“嵌套管道”。它可能是 4.1.0 的一部分。现在,您需要动态删除/添加处理程序。

有关示例,请参见 [1]。

[1] https://github.com/netty/netty/blob/master/example/src/main/java/io/netty/example/portunification/PortUnificationServerHandler.java

关于nested - Netty 嵌套管道/多路复用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15499679/

相关文章:

java - 为什么netty无法接收多个并发连接创建(8000+ conns,不是一一)?

parameters - F# - 为什么我不能在这段代码中使用管道运算符?

c++ - 设计用于处理对象的管道

c++ - C++中的IF嵌套

arrays - 如何以不支持其他嵌套结构的语言有效地实现包含其他嵌套结构数组的嵌套结构?

haskell - 方阵的嵌套数据类型

netty - 客户端连接打开时关闭 Netty 服务器

java - Netty 4 中导致 BlockingOperationException 的原因是什么?

rest - ResourceNotFound,找不到资源组 '...' 下的资源 Microsoft.DataFactory/factories/...

javascript - Redux:嵌套组件可以调用操作方法吗?