3 回答

TA貢獻(xiàn)1773條經(jīng)驗(yàn) 獲得超3個贊
檢查您的服務(wù)在根據(jù)該設(shè)置回退時間失敗之前所花費(fèi)的最長時間。檢查在失敗的情況下 resttemplate 可以拋出什么異常,僅將它們標(biāo)記為您的重試。

TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超5個贊
您應(yīng)該檢查您的“調(diào)用另一個微服務(wù)”實(shí)施。
它可能是由該邏輯內(nèi)部調(diào)用的另一個服務(wù)拋出異常。我建議創(chuàng)建一個自定義異常并將其用于您的重試定義。然后你可以檢查另一種意外異常是否是強(qiáng)制重試 4 次的異常。
@Retryable(value = { YourCustomException.class }, maxAttempts = 4, backoff = @Backoff(delay = 1000))
public Response createEmployee(EmployeeRequest employeeRequest)
{
log.info(“creating employee”)
:
// calls another micro service using RestTemplate which creates employee into the DB
:
}
添加回答
舉報