我剛剛發現Twitter流式端點支持某種方式檢測到慢速連接。套接字隊列(Twitter流作爲參考)
參考:https://dev.twitter.com/docs/streaming-apis/parameters#stall_warnings(和頁面底部)
想法是通過一個套接字發送大概會處理數據之一。它知道客戶端何時接收到一個數據包,因此它可以維護隊列並始終知道它的大小。
客戶端爲每個客戶端發送一些確認數據包很簡單。但Twitter流媒體API並非如此 - 這是一種單向傳輸。
我的問題是:他們是如何實現這一目標的?沒有一些非常低級別的原始套接字支持,我看不到一種方法 - 但我可能在這裏忘記了一些東西。有了一些低級別的支持,我們可能會爲每個數據包獲得ACK。這甚至有可能嗎?可以以某種方式跟蹤ACK?
任何其他想法如何做到這一點? 任何方式來做到這一點,例如在Python中?或者任何其他語言的例子,將不勝感激。
或者,也許我在這裏頭,它只是用來跟蹤有多少字節還沒有通過socket.send處理?但是,這不是一個客戶端連接的糟糕跡象嗎?
這就是我最後的結局。感謝您的好評! – arkens