[英]Long Lived GRPC Calls
我想知道長期 GRPC 調用的最佳實踐。
我有一個典型的客戶端 --> 服務器調用(都是 golang),服務器處理可能需要大約 20-30 秒才能完成。 在我繼續之前,我需要客戶等到它完成。 我看到的選項(我不喜歡其中任何一個):
選項#3 對我有用,但肯定感覺很臟。 我也 100% 依賴 Redis。 鑒於 GRPC 是基於 HTTP2 構建的,那么我認為可能存在某種服務器推送選項,但我沒有找到任何選項。
我擔心我忽略了一種處理這個問題的簡單方法。
謝謝
長壽命的 gRPC 通道是一個重要的用例,並得到完全支持。 但是,一個 gRPC 通道可能有多個 TCP 連接,並且 TCP 可能由於不活動而斷開連接。 您可以使用 keep-alive 或 HTTP/2 ping 來保持 TCP 處於活動狀態。 有關更多詳細信息,請參閱 此線程。 您提到的所有選項都沒有解決您的服務器需要一段時間才能響應的問題。 除非我缺少某些東西,否則您的問題中沒有任何內容是 gRPC 問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.