Zuul路由网关

1.简单介绍

什么是Zuul?
Zuul包含了对请求的路由和过滤两个最主要的功能:
其中路由功能负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础,而过滤器
功能则负责对请求的处理过程进行干预,是实现请求校验,服务聚合等功能的基础。Zuul和Eureka进行
整合,将Zuul自身注册为Eureka服务治理下的应用,同时从Eureka中获得其他微服务的消息,也即以后
的访问微服务都是通过Zuul跳转后获得。
注意:Zuul服务最终还是会注册进Eureka
提供:代理 + 路由 + 过滤 三大功能!
Zuul能干嘛?
路由
过滤

2.路由的基本配置

新建Module模块springcloud-zuul-gateway-9527
pom文件
添加Eureka和zuul的配置:

 
  
  1. org.springframework.cloud

  2. spring-cloud-starter-eureka

  3. 1.4.7.RELEASE

  4. org.springframework.cloud

  5. spring-cloud-starter-zuul

  6. 1.4.7.RELEASE

application.xml配置:

 
  
  1. server:

  2. port: 9527

  3. spring:

  4. application:

  5. name: springcloud-provider-dept-zuul

  6. eureka:

  7. client:

  8. service-url:

  9. defaultZone: http://localhost:7001/eureka,http://localhost:7002/eureka,http://localhost:7003/eureka

  10. instance:

  11. instance-id: springcloud-zuul-gateway-9527

  12. prefer-ip-address: true

  13. info:

  14. app.name: csh-springcloud

  15. company.name: www.csh.com

  16. build.artifactId: ${project.artifactId}

  17. build.version: ${project.version}

在主启动类上加上:@EnableZuulProxy//这里代理

3.测试一下

测试
不用路由 :http://localhost:8001/dept/get/2
使用路由 :http://localhost:9527/springcloud-provider-dept/dept/get/2
网关 / 微服务名字 / 具体的服务

路由访问映射规则:

代理名称yml文件中修改:

 
  
  1. zuul:

  2. routes:

  3. mydept.serviceId: springcloud-provider-dept

  4. mydept.path: /mydept/**

  5. ignored-services: springcloud-provider-dept# 不能再使用这个服务名访问

  6. prefix: /csh#加上一个前缀访问

配置前访问:http://localhost:9527/csh/springcloud-provider-dept/dept/get/2
配置后访问:http://localhost:9527/csh/mydept/dept/get/2

ignored-services: “*” # 通配符 * , 隐藏全部的!

Zuul路由网关_第1张图片

 

你可能感兴趣的:(Fegin,SpringCloud,Zuul,eureka,spring,cloud,java)