Netty 避免来自InputStream的网络拷贝

Netty 避免来自InputStream的网络拷贝,netty,Netty,Betty有一个非常灵活的抽象层,用于表示读写缓冲区,可以很好地使用NIO。在Netty 4中,这是ByteBuf类,在Netty 3中,这是ChannelBuffer 我正在处理一个库(JDBC),它返回一段数据的输入流,作为内部存储引擎的一部分。当前代码将其复制到一个中间字节数组,并在将其交给Netty处理之前围绕该字节数组构建ChannelBuffer。我正试图减少此堆栈中发生的不必要副本的数量,并希望在没有中间副本的情况下将InputStream直接传递给Netty,以便Netty可以将

Betty有一个非常灵活的抽象层,用于表示读写缓冲区,可以很好地使用NIO。在Netty 4中,这是ByteBuf类,在Netty 3中,这是ChannelBuffer


我正在处理一个库(JDBC),它返回一段数据的输入流,作为内部存储引擎的一部分。当前代码将其复制到一个中间字节数组,并在将其交给Netty处理之前围绕该字节数组构建ChannelBuffer。我正试图减少此堆栈中发生的不必要副本的数量,并希望在没有中间副本的情况下将InputStream直接传递给Netty,以便Netty可以将InputStream的内容直接写入套接字,而无需分配任何大的中间对象。Netty中是否有任何工具允许从不调用数据集完整副本的InputStream创建只读ChannelBuffer/ByteBuf

也许您正在寻找的是
ChunkedWriteHandler
ChunkedStream