TCP对流的分割采用四种方式
- 消息定长,每
LEN长分一个包 -
换行符作为消息结束符—\r,\r\n -
特殊分隔符,换行符就是一种特殊分隔符 - 消息头中指定了长度
Netty针对以上抽象了四种解码器
DelimiterBasedFrameDecoder应用开发
基于特殊字符的分割
服务端
首先设置用来缓冲的ByteBuf的分隔符为$_
然后new DeDelimiterBasedFrameDecoder(1024,xxx);。
发送消息时记得添加
这样碰到$_就发包
客户端
初始化时和server一致
FixedLengthFrameDecoder应用开发
比较实用,按照固定长度编码