Springcloud config + zuul 搭建动态网关

把zuul项目当成configClient端,在zuul项目的pom文件中新增依赖

<!-- SpringBoot整合Web组件 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-config-client</artifactId>
		</dependency>
		<!-- actuator监控中心 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-actuator</artifactId>
		</dependency>

配置文件

###注册 中心
eureka:
  client:
    serviceUrl:
      defaultZone: http://localhost:8100/eureka/
server:
  port: 80
###git上配置文件的名称
spring:
  application:
    name: zuulConfig
  cloud:
    config:
    ####环境名称(后缀)
      profile: dev
      ####读取config-server注册地址
      discovery:
        service-id: config-server
        ###开启读取
        enabled: true

#手动刷新
management:
  endpoints:
    web:
      exposure:
        include: "*"

码云上的配置文件

在zuul项目的启动类中添加如下方法

	@RefreshScope
	@ConfigurationProperties("zuul")
	public ZuulProperties zuulProperties() {
		return new ZuulProperties();
	}

启动Eureka、order项目、member项目、zuul项目。

访问http://localhost/api-order/toMember?name=22&userToken=111

然后把码云里面的配置文件改一下,把api-order改成order

手动刷新,使用postman访问http://127.0.0.1/actuator/refresh

然后访问http://localhost/order/toMember?name=22&userToken=111

实现不重启网关服务实时刷新配置。

zuul网关的搭建和springcloudConfig配置中心的搭建前面的博客已经说过了,如下

SpringcloudConfig中configClient端不重启项目,手动刷新同步

springcloud中使用zuul网关实现反向代理和zuul过滤器

发布了66 篇原创文章 · 获赞 35 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_41890624/article/details/104020804