8、Zuul路由网关

一、路由的概述

1)、Zuul的主要功能是路由转发和过滤器。
    其中路由功能负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础,
    而过滤器功能则负责对请求的处理过程进行干预,是实现请求校验,服务聚合等功能的基础。

2)、Zuul和Eureka进行整合,将Zuul自身注册为Eureka服务治理下的应用,同时从Eureka中获得其它微服务的消息,即以后
    的访问微服务都是通过Zuul跳转后获得。

3)、注意:Zuul服务最终还是会注册进Eureka的。

二、路由基本配置

1)、pom.xml文件

        
            org.springframework.cloud
            spring-cloud-starter-zuul
        

        
            org.springframework.cloud
            spring-cloud-starter-eureka
        

2)、主配置类

           @EnableZuulProxy
           @SpringBootApplication
           public class Application_zuul_9527 {

               public static void main(String[] args) {
                   SpringApplication.run(Application_zuul_9527.class, args);
               }
           }

3)、@EnableZuulProxy 注解的底层实现:

           @EnableCircuitBreaker
           @EnableDiscoveryClient
           @Target({ElementType.TYPE})
           @Retention(RetentionPolicy.RUNTIME)
           @Import({ZuulProxyConfiguration.class})
           public @interface EnableZuulProxy {
           }

4)、yml配置文件:

server:
  port: 9527

eureka:
  instance:
    instance-id: gateway-9527.com
    prefer-ip-address: true
  client:
    service-url:
      defaultZone: http://eureka7001.com:7001/eureka/, http://eureka7002.com:7002/eureka/, 
                    http://eureka7003.com:7003/eureka/

spring:
  application:
    name: microservicecloud-zuul-gateway

zuul:

# 原真实服务名忽略一个
#  ignored-services: microservicecloud-dept

# 原真实服务名批量忽略
  ignored-services: "*"

# 设置访问的统一公共前缀
  prefix: /zlj

# 路由映射:把 /mydept/** 路由转发到服务microservicecloud-dept
  routes:
    mydept:
      serviceId: microservicecloud-dept
      path: /mydept/**
                                               
5)、使用路由访问: http://gateway-9527.com:9527/microservicecloud-dept/dept/get/2  和 
    不使用路由访问:http://localhost:8001/dept/get/2  都可以获取id为2的数据

    设置前缀和路由映射规则以及原真实服务名忽略之后,最后只能通过该地址访问:
    http://gateway-9527.com:9527/zlj/mydept/dept/get/1

注意:gateway-9527.com : 在host文件中配置的映射
     microservicecloud-dept:使用路由访问的微服务的名称

8、Zuul路由网关_第1张图片
image.png

你可能感兴趣的:(8、Zuul路由网关)