zl程序教程

您现在的位置是:首页 >  其它

当前栏目

Netty 数据传输载体 —— ByteBuf

Netty 数据传输
2023-09-27 14:23:03 时间

在学习编解码的过程中,我们看到 Netty 大量使用了自己实现的 ByteBuf 工具类,ByteBuf 是 Netty 的数据容器,所有网络通信中字节流的传输都是通过 ByteBuf 完成的。然而 JDK NIO 包中已经提供了类似的 ByteBuffer 类,为什么 Netty 还要去重复造轮子呢?那就要好好说说 ByteBuf。

为什么是 ByteBuf

我们首先介绍下 JDK NIO 的 ByteBuffer,才能知道 ByteBuffer 有哪些缺陷和痛点。下图展示了 ByteBuffer 的内部结构: