一、zuul官方简介
(1)什么是zuul
Zuul是从设备和网站到Netflix流媒体应用程序后端的所有请求的前门。作为边缘服务应用程序,Zuul旨在实现动态路由,监视,弹性和安全性。它还可以根据需要将请求路由到多个Amazon Auto Scaling组。
(2)为什么要用Zuul
Netflix API流量的数量和多样性有时会导致生产问题迅速出现而没有警告。我们需要一个允许我们快速改变行为以对这些情况做出反应的系统。
Zuul使用各种不同类型的过滤器,这使我们能够快速灵活地将功能应用于边缘服务。这些过滤器帮助我们执行以下功能:
@H_404_12@身份验证和安全性-识别每种资源的身份验证要求,并拒绝不满足要求的请求。
见解和监控-在边缘跟踪有意义的数据和统计信息,以便为我们提供准确的生产视图。
动态路由-根据需要将请求动态路由到不同的后端群集。
减载-为每种类型的请求分配容量,并丢弃超出限制的请求。
静态响应处理-直接在边缘构建一些响应,而不是将其转发到内部集群
多区域弹性-在AWS区域之间路由请求,以多样化我们的ELB使用并将我们的优势拉近与会员之间的距离
(3)Zuul组件
Zuul 2.x组件:
@H_404_12@zuul-sample -Zuul 2.0的示例驱动程序应用程序
Zuul 1.x组件:
@H_404_12@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用于以下用途:
@H_404_12@Zuul的规则引擎使规则和过滤器基本上可以用任何JVM语言编写,并具有对Java和Groovy的内置支持。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。