TL; DR:谷歌雲HTTP(S)負載平衡器保持TCP連接打開多久?
當一個谷歌的雲HTTPS負載平衡器打開TCP流(具有「連接:保持活動」頭中的請求),是否有圍繞多久(最大)任何保證該流將保持對後端服務器開放?
長:
我部署一個圍棋http服務器後面的HTTPS負載平衡器,迅速跑進了很多的問題,因爲我已成立一個積極的(10秒)我的socket連接讀取的最後期限,這意味着我的服務器經常在讀取後續請求的過程中關閉連接。很明顯,我做錯了,但同時我不想在我的套接字上設置任何截止日期,因爲我想防止這些服務器隨着時間的推移緩慢地泄漏死亡連接的可能性,吃掉所有我的文件描述符。
因此,例如,如果負載均衡器自動關閉5分鐘後打開的任何tcp流,那就太好了。通過這種方式,我可以將服務器的讀取期限設置爲(例如)6分鐘,並且我可以確定我永遠不會中斷任何請求 - 僅在特殊情況下才會調用截止日期(例如,未收到來自負載平衡器的FIN數據包由我的服務器)。