簡體   English   中英

Netty 4.1:防止在服務器異常上發送 TCP ACK

[英]Netty 4.1: preventing TCP ACK from being sent on server exception

我正在使用現有的 Java 服務器,該服務器使用 Netty 4.1 接收專有協議。 有時,這些消息必須傳遞到的下游系統將無法接受它們。 發生這種情況時,我的管道中將引發異常。 在這些情況下,與其實現我自己的恢復機制,我更願意利用(現有)客戶端將重新發送未收到 TCP ACK 的消息這一事實。

netty 是否可以實現這樣的方案,如果可以,我應該如何實現我的管道來實現這一點? 我管道中的所有 ChannelHandler 實現都在父組中運行,因為它們的操作速度可以接受。

TCP ACK 是一種傳輸層機制,用於確認接收方已成功接收數據。 您在用例中想要的是一種應用程序層機制,用於確認數據已由應用程序成功處理(包括將其轉發到管道中的另一個步驟)。

這些是完全不同的事情,即數據交付的成功與數據處理的成功。 沒有 API 可以(錯誤地)將第一個用於后者,即您需要實現自己的(應用程序級別)機制。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM