spring-cloud-part 5 : 路由网关 (Zuul)
摘自: http://blog.csdn.net/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 配置文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | 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 还可以用作服务过滤
新手操作,仅用作学习笔记,如有不正确之处,望指正!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 现代计算机视觉入门之:什么是视频
· 你所不知道的 C/C++ 宏知识
· 聊一聊 操作系统蓝屏 c0000102 的故障分析
· SQL Server 内存占用高分析
· .NET Core GC计划阶段(plan_phase)底层原理浅谈
· 盘点!HelloGitHub 年度热门开源项目
· DeepSeek V3 两周使用总结
· 02现代计算机视觉入门之:什么是视频
· C#使用yield关键字提升迭代性能与效率
· 2. 什么?你想跨数据库关联查询?