spring-cloud-part 5 : 路由网关 (Zuul)

本文介绍如何使用Zuul作为服务网关,通过配置实现动态路由、监控、鉴权等功能。具体步骤包括导入依赖、添加注解、配置文件设置及测试验证。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

摘自: http://blog.youkuaiyun.com/forezp/article/details/69939114  方志朋微博

一 zuul用作路由的作用
/**
* zuul 路由网关的使用
* 步骤: 1. eureka-server 8761
* 2. eureka-client 8762 hi
* 3. service-ribbon 8764 hello
* 4. service-feign 8763 how
* 5. service-zuul
* 1. 导包 spring-cloud-starter-eureka
* spring-boot-starter-web
* spring-cloud-starter-zuul
* 2. 在入口类上加上注解 @EnableZuulProxy
* 3. application.yaml 配置文件
* 端口: 8765 spring.application.name:service-zuul
* eureka.service-url...
* zuul的配置
* 4. 测试
* 访问: http://localhost:8765/api-a/hello?name=zdj
*      访问: http://localhost:8765/api-b/hello?name=zdj
* 均可以出现网页 hi,this port is : 8762--说明zuul在这里起到了路由的作用
*
*/

服务网关API gateway 有多种实现方法,比如 Nginx,Zuul ,甚至一个Node.js 的服务端;其作用是是前台提供后台服务的集合,提供一个统一的服务出口。
解决它们之间的耦合,同时负责鉴权、认证、安全和跳转的作用。

Zuul是边缘服务,用来提供动态路由、监控、鉴权、安全、调度等功能,将权限控制等一些业务逻辑抽离出来,单独放到Zuul里,使得服务组件更简单,具有更好的可复用性。

zuul 作用原理 :

  Zuul是反向代理工具,代理了后台的所有服务端,前端请求不需要知道真正的服务端是谁,只要交给Zuul就可以了,Zuul负责路由到真正的服务商

简言之,zuul的作用就是  封装内部所有的服务商,对外提供统一的调用

01 导包

02 入口类上加上@EnableZuulProxy

03  配置 .yaml 配置文件

server:
  port: 8765

spring:
  application:
    name: service-zuul

eureka:
  client:
    service-url:
      defaultZone: http://localhost:8761/eureka/


#  以 /api-a/ 开头的请求都转发给 service-ribbon 服务;
#  以 /api-b/ 开头的请求都转发给 service-feign 服务;
zuul:
  routes:
    api-a:
      path: /api-a/**
      serviceId: service-ribbon
    api-b:
      path: /api-b/**
      serviceId: service-feign

 04  测试   访问  http://localhost:8765/api-a/hello?name=zdj  以及  http://localhost:8765/api-b/hello?name=zdj  均可以调用 service-hi 服务,说明zuul在这里起到了路由的作用。

 

二   zuul 还可以用作服务过滤























转载于:https://www.cnblogs.com/zdj-/p/8270388.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值