一、zuul官方简介

(1)什么是zuul

Zuul是从设备和网站到Netflix流媒体应用程序后端的所有请求的前门。作为边缘服务应用程序,Zuul旨在实现动态路由,监视,弹性和安全性。它还可以根据需要将请求路由到多个Amazon Auto Scaling组。

(2)为什么要用Zuul

Netflix API流量的数量和多样性有时会导致生产问题迅速出现而没有警告。我们需要一个允许我们快速改变行为以对这些情况做出反应的系统。

Zuul使用各种不同类型的过滤器,这使我们能够快速灵活地将功能应用于边缘服务。这些过滤器帮助我们执行以下功能:

  • 身份验证和安全性-识别每种资源的身份验证要求,并拒绝不满足要求的请求。

  • 见解和监控-在边缘跟踪有意义的数据和统计信息,以便为我们提供准确的生产视图。

  • 动态路由-根据需要将请求动态路由到不同的后端群集。

  • 压力测试-逐渐增加到群集的流量以评估性能。

  • 减载-为每种类型的请求分配容量,并丢弃超出限制的请求。

  • 静态响应处理-直接在边缘构建一些响应,而不是将其转发到内部集群

  • 多区域弹性-在AWS区域之间路由请求,以多样化我们的ELB使用并将我们的优势拉近与会员之间的距离

(3)Zuul组件

Zuul 2.x组件:

  • zuul-core -Zuul 2.0的核心功能

  • zuul-sample -Zuul 2.0的示例驱动程序应用程序

Zuul 1.x组件:

  • zuul-core-该库包含编译和执行过滤器的核心功能

  • zuul-simple-webapp -webapp显示了如何使用zuul-core构建应用程序的简单示例

  • zuul-netflix-将其他NetflixOSS组件添加到Zuul的库-例如,使用Ribbon路由请求。

  • zuul-netflix- webapp-将zuul-core和zuul-netflix打包到一个易于使用的程序包中的webapp

二、SpringCloud集成

路由是微服务架构不可或缺的一部分。例如,/可能被映射到您的Web应用程序,/api/users被映射到用户服务以及/api/shop被映射到商店服务。 Zuul是Netflix提供的基于JVM的路由器和服务器端负载平衡器。

Netflix将Zuul用于以下用途:

  • 验证
  • 见解
  • 压力测试
  • 金丝雀测试
  • 动态路由
  • 服务迁移
  • 减载
  • 安全
  • 静态响应处理
  • 主动/主动流量管理

Zuul的规则引擎使规则和过滤器基本上可以用任何JVM语言编写,并具有对Java和Groovy的内置支持。

SpringCloud Zuul(一)之介绍相关推荐

  1. 【微服务架构】SpringCloud组件和概念介绍

    [微服务架构]SpringCloud组件和概念介绍(一) 一:什么是微服务(Microservice)微服务英文名称Microservice,Microservice架构模式就是将整个Web应用组织为 ...

  2. SpringCloud Zuul 网关搭建及配置

    目录 一.Zuul网关 二.Zuul服务的前期准备 2.1 注册中心EurekaServer的搭建 2.2 EurekaService的搭建 三.Zuul服务搭建 五.Zuul的访问 六.Zuul的更 ...

  3. SpringCloud Zuul 基础入门

    SpringCloud Zuul 基础入门 - <重新定义SpringCloud实战>读书笔记系列 Spring Cloud Zuul概述 随着微服务的流行,微服务架构将后端拆解为许多个单 ...

  4. SpringCloud Zuul初体验

    文章目录 简介 Zuul服务搭建 后端服务book搭建 创建一个web应用 主程序 配置application.properties 访问book服务 Zuul服务搭建 创建应用 添加一个pre过滤器 ...

  5. SpringCloud config 配置中心介绍与基本配置使用

    一.SpringCloud Config 介绍 出现背景:在微服务架构中,在没有配置中心出现时,我们每个应用的配置信息都在其配置文件application.properties中维护.加入整个系统中有 ...

  6. SpringCloud Consul注册中心介绍及配置使用

    概述:Consul 是HashiCorp 公司推出的一款基于Go语言编写的用于实现分布式系统服务发现与配置的一款开源工具.Consul主要功能包含服务注册与发现.分布式一致性协议(Raft算法)实现. ...

  7. 【微服务架构】SpringCloud组件和概念介绍(一)

    一:什么是微服务(Microservice) 转 : http://www.cnblogs.com/xiaojunbo/p/7090742.html 微服务英文名称Microservice,Micro ...

  8. SpringCloud Zuul 网关

    目录 网关的概念 搭建zuul网关.实现路由转发 使用zuul过滤请求 使用zuul进行限流 网关的概念 API Gateway 网关,是介于客户端.服务器端之间的中间层,是系统对外的唯一入口,可以统 ...

  9. springCloud笔记——微服务介绍

    1.springCloud就是一个rpc服务框架,提供注册服务,发现服务,断路器,网关,自动配置, Eureka注册中心, ribbon(负载均衡), feign(http协议调用工具) Hystri ...

最新文章

  1. UVa 10055 - Hashmat the Brave Warrior
  2. python话雷达图-PYTHON绘制雷达图代码实例
  3. eclipse中导入spring-boot框架的jar包方法
  4. 9.3磁盘及文件系统管理详解
  5. 使用Eclipse将包含第三方jar库的java工程打包成jar包
  6. hydra安装及使用
  7. 收藏!数据建模最全知识体系解读
  8. 最新37网游JS逆向分析
  9. Android开发工具之DDMS
  10. mysql 查看死锁和去除死锁
  11. Ananagrams (多种stl)
  12. vmware16安装mac虚拟机的unlocker
  13. HDU 5857 Median(水~)
  14. 分别使用while、do-while和for循环输出1-1000中含有7或者7倍数的整数之和及个数-详解
  15. HDU 5869 Different GCD Subarray Query (数学gcd+树状数组离线查询)
  16. 2022ICPC预选赛 A Yet Another Remainder(数学)(构造)
  17. BAT公司 or 创业公司,选择哪个更好?
  18. 证券业上云内参: 深圳证券信息
  19. 如何用cmd安装Python库
  20. Matlab小结6(线性规划)

热门文章

  1. java实用教程——组件及事件处理——对话框(颜色对话框,自定义对话框)
  2. JAVA中的GridView每一个赋值,在ASP.NET 2.0中操作数据之六十二:GridView批量更新数据...
  3. 软件构造学习笔记-第十三周
  4. [PAT乙级]1042 字符统计
  5. [C++STL]deque容器用法介绍
  6. 算法题目中常见的几种输入小点-gets,cin,scanf,getline,sstream
  7. [蓝桥杯2016初赛]冰雹数-模拟
  8. [USACO1.5]八皇后 Checker Challenge
  9. Calendar Game POJ - 1082(关于日历的博弈问题)
  10. Pandas - 查看DataFrame信息