Dubbo的超時重試機制為服務容錯、服務穩(wěn)定提供了比較好的框架支持 dubbo在調(diào)用服務不成功時,默認會重試2次。Dubbo的路由機制,會把超時的請求路由到其他機器上,而不是本機嘗試,所以 dubbo的重試機器也能一定程度的保證服務的質(zhì)量。,但是在一些比較特殊的網(wǎng)絡環(huán)境下(網(wǎng)絡傳輸慢,并發(fā)多)可能由于服務響應慢,Dubbo自身的超時重試機制(服務端的處理時間超過了設定的超時時間時,就會有重復請求)可能會帶來一些麻煩。
常見的應用場景故障: 1、發(fā)送郵件(重復) ;2、賬戶注冊(重復).。
解決方案: 對于核心的服務中心,去除dubbo超時重試機制,并重新評估設置超時時間。
(1)、去掉超時重試機制
<dubbo:provider delay="-1" timeout="6000" retries="0"/>
(2)、重新評估設置超時時間
<dubbo:service interface="." ref="*" timeout="延長服務時間"/>