我对 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/