【Zuul2】Zuul2网关介绍及案例(非spring集成)

本文介绍Zuul2的三种过滤器Inbound、Endpoint、Outbound的应用,及如何通过配置文件application.properties进行动态配置。项目使用Groovy语言编写过滤器,并支持动态更新,无需重启服务器。文中还详细讲解了基于Ribbon和虚拟路由VIP的请求转发功能。

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

目录

一.使用缘由

二.项目介绍

1.核心内容

(1)三种过滤器 Inbound、Endpoint 、Outbound 

(2)配置文件application.properties

(3)动态配置application.properties

2.参考文档


一.使用缘由

公司需要在springcloudgateway和zuul2间做一次较为完整的调研对比,选取其一作为满足我们需求的网关,我接到的任务是搭建自己本地的zuul2项目。

本文目的不在于网关的对比,而在于zuul2 sample项目的简略使用介绍(后面有可供使用的代码地址)。

此外,网络上zuul2的正确文档少之又少,希望能帮助有需要的人少走弯路

 

二.项目介绍

1.核心内容

(1)三种过滤器 Inbound、Endpoint 、Outbound 

描述:

  • Inbound Filters :在路由到源之前执行
  • Endpoint Filters :可用于返回静态响应
  • Outbound Filters :在来源获取响应后执行

重点:

  1. 它的filter使用的语言不是java,而是groovy
  2. 它的filter是可以动态更新的,也就是说,你编辑或新增filter不需要重启服务器。

(2)配置文件application.properties

application.properties是他提供的默认配置文件,项目的启动和使用都基于它。

重点:

  1. 主要功能:请求的转发。是基于配置中的ribbon和虚拟路由vip实现的(详见文件内容)
  2. 它提供两种启用方式,可以选择注册到eureka或者直接通过自身启用。两种的使用差别在于,是通过端口去调用,还是通过serviceId去调用。
  3. 使用条件:项目http://localhost:8091/users、http://localhost:8093/test 能被post请求并成功响应。
  4. 若使用eureka,则此处配置的eureka地址为:http://localhost:8111/eureka/
  5. 上面两个条件的参数可以自己配置

(3)动态配置application.properties

通过集成Netflix Archaius用于动态属性管理。

本项目的具体实现是:以轮询的方式,隔一段时间从网络上获取properties配置,同时更新项目中的properties配置。

这是它的实现过程:

 

这些配置完成后,首先会在启动项目时获取一次配置文件,此后会根据定义的轮询时间获取一次配置文件。

 

2.参考文档

若有些不清晰的内容,可以通过这些参考文档详细了解zuul2。

官网:https://github.com/Netflix/zuul/wiki

指导示例:https://github.com/dashprateek/zuul2-sample

指导博客:https://thebackendguy.com/netflix-zuul-2-api-gateway-sample/

动态配置指导 博客:https://blog.csdn.net/upupuptp/article/details/74003901

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值