1. 程式人生 > 其它 >feign.RetryableException: Read timed out

feign.RetryableException: Read timed out

產線異常如下:

很明顯,告訴我們讀超時了,需要涉及feign的讀超時時間,順帶閱讀下原始碼:

根據如上的堆疊資訊,直接開啟SynchronousMethodHandler.java 看104行 (FeignException.java不用看,很明顯是個包裝的exception)

檢視option在當前類中如何初始化的

右鍵建構函式,find usage

原來是當前類的靜態內部類

如法炮製,繼續檢視誰呼叫該靜態內部類的create方法:

繼續檢視ReflectiveFeign中 option的初始化在哪,又一個靜態內部類

繼續檢視靜態內部類的建構函式是誰呼叫的

找到大本營了,原來是Feign中build方法呼叫的,繼續檢視該options的初始化

首先,它有預設值:預設連結超時10S,讀超時60S

其次,誰可以給它set值:檢視誰可以呼叫給方法重置option值

如下2個:

常見的2個類