2013-03-19 2 views
6

Nettyではかなり新しくなっていますが、いくつかのプロトコル(P1やP2など)が別のプロトコルでカプセル化されていると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のパイプラインに沿ってデータを送信し、メインパイプラインであることを?

または、どういうわけか(独自性を明確にするために)「サブチャネル」を独自のパイプラインで作成する方法がありますか?

答えて

2

"ネストされたパイプライン"はまだサポートされていません。それは4.1.0の一部であるかもしれません。今のところ、ハンドラーを即座に削除/追加する必要があります。

例として[1]を参照してください。

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

+0

現在はどうなっていますか?まだサポートされていませんか? –

+0

いいえ...まだサポートはありません。 –

+0

なので、何らかの種類の多重化を実装するために、ハンドラを追加/削除する必要がありますか?いくつかのレイテンシーを導入しているようです...おそらくもっと良い方法がありますか? –