内容简介:微服务网关组件 Zuul 2.1.2 已发布,暂未发现官方的发布说明。可通过查看提交记录,了解本次更新的内容。 据 Zuul 的 wiki 介绍,Zuul 2.x 包含以下的核心组件: zuul-core - Zuul 2.0 的核心功能 zuul-sample ...
微服务网关组件 Zuul 2.1.2 已发布,暂未发现官方的发布说明。可通过查看提交记录,了解本次更新的内容。
据 Zuul 的 wiki 介绍,Zuul 2.x 包含以下的核心组件:
zuul-core - Zuul 2.0 的核心功能
zuul-sample - a sample driver application for Zuul 2.0 的示例驱动应用
Zuul 2 的大体架构图
过滤器前端和后端的 Netty 事件处理器(handler)主要负责处理网络协议、Web 服务器、连接管理和代理工作。这些内部工作被抽象之后,所有主要的工作都会交给过滤器完成。入站过滤器在代理请求之前运行,可用于验证、路由或装饰请求。端点过滤器可用于返回静态响应,或将请求代理到后端服务。出站过滤器在返回响应后运行,可用于诸如压缩(gzipping)、指标或增删自定义请求头之类的内容。
Zuul 的功能几乎完全取决于每个过滤器的逻辑。这意味着它可以部署在多种上下文中,使用配置和运行的过滤器解决不同的问题。
Zuul 2 的核心功能特性
服务器协议
HTTP/2——完整的入站(inbound)HTTP/2 连接服务器支持
双向 TLS(Mutual TLS)——支持在更安全的场景下运行 Zuul
弹性特性
自适应重试——Netflix 用于增强弹性和可用性的核心重试逻辑
源并发保护——可配置的并发限制,避免源过载,隔离 Zuul 背后的各个源
运营特性
请求 Passport——跟踪每个请求的所有生命周期事件,这对调试异步请求非常有用
状态分类——请求成功和失败的可能状态枚举,比 HTTP 状态码更精细
请求尝试——跟踪每个代理的尝试和状态,对调试重试和路由特别有用
一些即将推出的功能,包括:
Websocket/SSE——支持通道推送通知
限流和限速——防止恶意客户端连接和请求,帮助抵御大规模攻击
掉电过滤器——Zuul 过载时禁用一些 CPU 密集型特性
可配置路由——基于文件的路由配置,而不需要在 Zuul 中创建路由过滤器
使用
Maven
<dependency> <groupId>com.netflix.zuul</groupId> <artifactId>zuul-core</artifactId> <version>2.1.2</version> </dependency>
Gradle
compile "com.netflix.zuul:zuul-core:2.1.2"
参考
https://medium.com/netflix-techblog/open-sourcing-zuul-2-82ea476cb2b3
聊聊架构公众号
https://github.com/Netflix/zuul/wiki/Core-Features
【声明】文章转载自:开源中国社区 [http://www.oschina.net]
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- Martian-gateway 1.0.2 发布,Martian 框架网关组件
- BudWk 7.0.0 发布,微服务网关 + 组件化 + API 接口化
- Soul 网关发布 2.2.0,让高性能网关变得如此简单!
- 远行API网关(200428)
- zuul网关实现解析
- 设计一个HTTP网关
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Impractical Python Projects
Lee Vaughan / No Starch Press / 2018-11 / USD 29.95
Impractical Python Projects picks up where the complete beginner books leave off, expanding on existing concepts and introducing new tools that you’ll use every day. And to keep things interesting, ea......一起来看看 《Impractical Python Projects》 这本书的介绍吧!