我有一個Netty應用程序,它將HTTP連接和流間歇性數據傳回,同時保持連接處於打開狀態,直到客戶端關閉它爲止。我可以讓應用程序工作,除了發送緩衝區不會足夠頻繁地推送到客戶端(並且經常跨越合併寫入事件,這會導致另一端的數據接收不完整,直到下一個緩衝區被按下,這可能會很長時間未來)。我想知道是否有辦法讓我寫入發送緩衝區,並強制刷新一個完整的數據塊到客戶端,而無需關閉套接字。在Netty中以編程方式刷新頻道
我已經看過引導程序屬性tcpNoDelay
,writeBufferHighWaterMark
和writeBufferLowWaterMark
(全部有和沒有「子」。)無效。
有什麼建議嗎?謝謝!
我也嘗試將「sendBufferSize」選項設置爲0,而不進行更改。 –
通過服務器套接字的綁定進行跟蹤,我發現bufferFactory,receiveBufferSize,reuseAddress和backlog是可以在服務器套接字端設置的唯一屬性。我想我必須看看接下來的bufferFactory。 –