第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

從 netty 服務(wù)器讀取時,不同的響應(yīng)消息正在合并

從 netty 服務(wù)器讀取時,不同的響應(yīng)消息正在合并

慕桂英3389331 2022-10-07 19:28:53
我有一個 netty 客戶端應(yīng)用程序。此應(yīng)用程序正在連接到端口并檢索 tcp 響應(yīng)。當我在負載下閱讀響應(yīng)時,一些響應(yīng)消息正在連接。我的請求和響應(yīng)消息具有唯一的事務(wù)密鑰。我正在關(guān)注我的業(yè)務(wù)邏輯;實際:000010690013200000101PMAX 567F 0000000000 1554092081842400 0 000010690013200000101PMAX 567F 0000000000 1556083801080400 0預(yù)期:000010690013200000102PMAX 567F 0000000000 1554092081842400 0重復(fù)響應(yīng)有 2 個響應(yīng),但服務(wù)器僅發(fā)送 1 個響應(yīng),我們在閱讀時匯總了它@Overridepublic void channelRead0(ChannelHandlerContext channelHandlerContext, ByteBuf in) {    String input = in.toString(CharsetUtil.UTF_8);    log.info(input);}我該如何解決這個問題,它是在負載下發(fā)生的。Netty 版本:4.1.25.Final Java 版本:OpenJDK 64-Bit Server VM(build 25.161-b14,混合模式)謝謝。
查看完整描述

1 回答

?
慕姐8265434

TA貢獻1813條經(jīng)驗 獲得超2個贊

這是意料之中的,也是 TCP 的工作原理。TCP 沒有消息邊界的概念,因此您可能會在讀取字節(jié)時收到它們(這意味著內(nèi)容可能會被分段等)。

如果您需要保留某種消息邊界,則需要在協(xié)議中對此信息進行編碼。例如,您可以預(yù)先添加消息的長度,然后在接收對等方上使用此信息來正確解碼消息。

Netty 本身包含一些解碼器/編碼器

LengthFieldPrepender

LengthFieldBasedFrameDecoder


查看完整回答
反對 回復(fù) 2022-10-07
  • 1 回答
  • 0 關(guān)注
  • 88 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號