Netty學習筆記1-粘包/拆包

1,粘包/拆包問題




2,粘包/拆包的解決策略



3,String解碼器

socketChannel.pipeline().addLast(new StringDecoder());

4,換行符轉碼器(特殊的分隔符)

request = ("QUERY TIME ORDER" + System.getProperty("line.separator")).getBytes();
socketChannel.pipeline().addLast(new LineBasedFrameDecoder(222));

5,分隔符轉碼器

socketChannel.pipeline().addLast(new DelimiterBasedFrameDecoder(1024,delimiter));
1024-讀取buffer的最大長度,如果超過該長度還沒讀取到分隔符則拋出異常
delimiter-分隔符

6,定長轉碼器

socketChannel.pipeline().addLast(new FixedLengthFrameDecoder(20));
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章