retry就是重試的意思,在咱們的系統中,分佈式或者是外部服務,存在其餘服務異常,或者網絡問題,須要咱們重試的狀況,可是重試可能仍是錯誤的,總不能讓系統一直報錯,直到崩掉吧。因此熔斷器的功能就是必須的啦,在重試的次數仍是失敗的時候,就終止,好比dubbo這樣微服務的框架,通常都會配置重試次數。這些spring retry 都作了處理,還能夠配置重試的異常類型和時間間隔等。git
能夠看看這個quickstart(https://github.com/spring-projects/spring-retry),而後建立一個spring boot 的項目。github
而後在 pom 中加入相應的依賴spring
而後咱們寫一個啓動類,區別就是加上 EnableRetry 的註解,這樣重試會生效微信
而後咱們看看咱們實現的類中的方法,這裏咱們會捕獲TypeOneException.class, TypeTwoException.class異常,而後maxAttempts是4網絡
日誌輸出:框架
若是咱們不用重試,那麼會是如下的日誌輸出:分佈式
有什麼討論的內容,能夠加我微信公衆號:微服務