现象
number of retries on next server exceeded max 1 retries
解决方法
在启动类中加忽略 @SpringBootApplication(exclude = {SeataFeignClientAutoConfiguration.class})
加入全局拦截传递XID
import feign.RequestInterceptor; import feign.RequestTemplate; import io.seata.core.context.RootContext; import io.seata.spring.annotation.GlobalTransactional; import org.apache.commons.lang3.StringUtils; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.stereotype.Component; /** * 全局拦截传递XID */ @Component @ConditionalOnClass({RequestInterceptor.class, GlobalTransactional.class}) public class SetSeataInterceptor implements RequestInterceptor { @Override public void apply(RequestTemplate template) { String currentXid = RootContext.getXID(); if (!StringUtils.isEmpty(currentXid)) { template.header(RootContext.KEY_XID, currentXid); } } }
结果

版权声明:本文为weixin_43960684原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。