要解決的場景是:
假設存在一條呼叫鏈,如A服務呼叫B服務,B服務呼叫C服務,并且通過A服務設定了Deadline時間,

當客戶端A服務設定了Deadline后,通過頭幀將超時時間傳遞給了服務B,
然后服務B,又將超時時間傳遞給了服務C,
那么服務B,C實際允許運行的時間并不是客戶端A設定的超時時間,
也就是說,這條呼叫鏈上的服務共享超時時間,或者,允許這條呼叫鏈運行的時間,就是客戶端A設定的超時時間,
服務B運行的時間長了,那么留給服務C運行的時間就少了,超時后,會報context deadline exceeded例外,
?
C服務執行完成后,將執行結果反饋給B服務,
B服務執行完成后,再將執行結果反饋給A服務,
如果B服務或者C服務運行的時間超過了A服務設定的Deadline時間后,A服務就會報context deadline exceeded例外
下一篇文章
??健康檢測相關介紹
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/296849.html
標籤:其他
上一篇:【如何構建商業級別聊天系統】 MQTT 篇(五)保活 Keep Alive,請不要讓你的 MQTT 服務變成小豬佩奇!
