搭建动态Zuul网关路由转发

项目地址: 链接:https://pan.baidu.com/s/1Mxo0ltvZbpz_r8mCU-mSpw 
提取码:3j4a 

1.还是和SpringCloud  Config配置中心动态刷新配置文件一样  

   了解配置中心 https://blog.csdn.net/zhangshengqiang168/article/details/104465721

2.在码云创建一个新的配置文件 zuul-gateway-dynamic-dev.properties .内容为zuul网关配置信息

3.搭建动态zuul网关项目(这里需要之前config-server 配置中心服务端服务)

   1.添加pom.xml依赖

        <!--SpringCloud整合 zuul网关  还需要eurekaClient-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-zuul</artifactId>
        </dependency>
        <!--SpringBoot整合config-client-->
        <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>
         <!--SpringBoot整合Eureka客户端组件-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>

2.application.properties配置文件

#指定运行端口
server.port=80

#配置注册中心地址
eureka.client.service-url.defaultZone=http://localhost:8000/eureka/

#配置连接配置中心码云读取配置文件信息
#服务名称 码云配置文件zuul-gateway-dynamic-dev.properties 的项目名称 zuul-gateway-dynamic
spring.application.name=zuul-gateway-dynamic

#读取版本环境 码云配置文件zuul-gateway-dynamic-dev.properties 的环境 dev
spring.cloud.config.profile=dev

#读取config-server环境  读取的配置中心名称
spring.cloud.config.discovery.service-id=config-server

#开启读取权限
spring.cloud.config.discovery.enabled=true

#监控中心开启所有端点
management.endpoints.web.exposure.include=*

3.启动类

@SpringBootApplication
@EnableEurekaClient
@EnableZuulProxy   //开启zuul 网关
public class AppGateWayDynamic {
    public static void main(String[] args) {
        SpringApplication.run(AppGateWayDynamic.class,args);
    }

    //zuul配置能够使用config实现实时更新
    @RefreshScope
    @ConfigurationProperties("zuul")
    public ZuulProperties zuulProperties(){
        return new ZuulProperties();
    }
}

4.测试 config-server 尝试访问配置文件信息http://localhost:8888/zuul-gateway-dynamic-dev.properties

   尝试网关访问是否有效   http://localhost/api-member?userToken=111

5.尝试修改码云上的zuul-gateway-dynamic-dev.properties配置文件,并手动刷新配置文件http://localhost:80/actuator/refresh 访问测试

6.可以看到之前的member已经访问不到,只能访问修改后的zhang

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章