狂神说Spring Cloud Netflix笔记-06(Zuul 路由网关)

13、Zuul 路由网关

概述

什么是Zuul

在这里插入图片描述

Zuul能干吗

  • 路由
  • 过滤

官网 : https://github.com/netflix/zuul

直接搭建项目:springcloud-zuul-9527

springcloud-zuul-9527

先在自己的hosts文件添加域名映射来模仿网站

C:\Windows\System32\drivers\etc\hosts
在这里插入图片描述
在这里插入图片描述

pom.xml

<dependencies>
    <!--zuul-->
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-zuul</artifactId>
        <version>1.4.7.RELEASE</version>
    </dependency>
    <!--erueka-->
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-eureka</artifactId>
        <version>1.4.7.RELEASE</version>
    </dependency>
    <!--actuator完善监控信息-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
</dependencies>

然后第二步肯定是配置文件

application.yml

server:
  port: 9527
spring:
  application:
    name: springcloud-zuul
# eureka 配置
eureka:
  client:
    service-url:
      defaultZone: http://eureka7001.com:7001/eureka/,http://eureka7002.com:7002/eureka/,http://eureka7003.com:7003/eureka/
  instance:
    instance-id: zuul9527.com  #修改Eureka上的默认描述信息
    prefer-ip-address: true  # 为true可以显示服务的ip地址
info:
  app.name: wu-springcloud
  company.name: blog.wulei2921625957.com

#zuul配置
zuul:
  routes:
    mydept.serviceId: springcloud-provider-dept  # 原来的id 
    mydept.path: /mydept/**  # serviceId 和 path 是配套使用的,前面的mydept可以随便
  ignored-services: 
    - springcloud-provider-dept  #不能再使用这个路径访问了  这是yml的数组表示方式
    # 没有加上面的忽略配置可以直接通过http://www.wu.com:9527/springcloud-provider-dept/dept/get/1访问
  prefix: /wu     # 这个是前缀  比如: http://www.wu.com:9527/wu/mydept/dept/get/1

最后是主启动类

ZuulApplication_9527

@SpringBootApplication
@EnableZuulProxy  //加上zuul代理注解即可
public class ZuulApplication_9527 {
    public static void main(String[] args) {
        SpringApplication.run(ZuulApplication_9527.class, args);
    }
}

总共就是这3步

然后启动项目 7001、8001、9527

访问http://www.wu.com:9527/wu/mydept/dept/get/1 即可得到结果


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