這裏介紹下grpc各種報錯以及解決方案
io.grpc.StatusRuntimeException: UNIMPLEMENTED
這個錯誤網上很多,大部分情況下 是由於方法找不到,即客戶端與服務端proto的內容或者版本不一致,這裏只需要改成一致,一般問題都能解決
DEADLINE_EXCEEDED: deadline exceeded after 149944644ns
這種錯誤明細我這裏就不打印了,這裏一般是讀取數據超時,
問題原因:一般是grpc超時時間設置短了,或者下游服務響應超時。
解決方案:修改grpc超時時間,或者檢查grpc服務端是否有問題
Exception:UNAVAILABLE: upstream request timeout
問題原因:這裏可以理解爲連接超時,這裏說明健康檢查也超時
解決方案:檢查grpc服務端是否有問題。
INTERNAL: Received unexpected EOS on DATA frame from server
問題原因:這裏可翻譯爲收到了空消息,這裏可能是服務端沒響應
解決方案:檢查端口是否對應上,服務是否正常,特別是docker中的端口映射配置是否正確。
io.grpc.StatusRuntimeException: UNKNOWN
問題原因: 從字面意思是未知錯誤,這個是服務端反饋,主要是服務端報了一些未知異常,比如說參數傳的有問題等
解決方案: 檢查客戶端傳參是否有個別異常,打印出有問題參數