SpringBoot+Nacos+Gateway动态路由
前言:
动态路由: 可见标题 架构选择nacos作为服务注册,GateWay作为网关两者都是ali。那nacos咱们都知道可作为配置中心
来使用且可动态,那做一个动态路由我觉得还是有些必要性的,不至于每次增加路由都要重新部署服务。之前写过一篇动态路由的文章,但那个可能使用的cloud,springboot版本低 以至于到现在的版本监听不到,而且那个是json版本。所以写下这篇文章。
上一篇动态路由地址: 动态路由
‘新版’动态路由(yaml格式)
版本信息:springboot:2.2.2.RELEASE------com.alibaba.cloud: 2.2.4.RELEASE-----org.springframework.cloud:Hoxton.RELEASE
上代码
@Data
@Component
@ConfigurationProperties(prefix = "broad.dynamic.route")
@ConditionalOnBean(DynamicRouteConfiguration.class)
public class DynamicRouteProperties {
private String dataId;
private String group;
private String ipAddr;
private boolean enabled = false;
}
DynamicRouteConfiguration
@Configuration
@ConditionalOnProperty(name = "broad.dynamic.route.enabled", matchIfMissing = true)
public class DynamicRouteConfiguration implements ApplicationEventPublisherAware {
Logger log= LoggerFactory.getLogger(DynamicRouteConfiguration.class);
private final static String NAMESPACE="8359a8d9-03ab-4574-9627-9456351c0c01";
private final static String USERNAME_PASSWORD="nacos";
private final static String REPLACE="routes:"