分布式(二)网关

什么是网关?
访问一个系统的请求及系统的响应所要经过的网络关口。网关主要进行请求过滤,具体应提供请求转发、安全认证、流量控制、负载均衡、日志、监控等功能
为什么要用网关?
微服务架构中,一个系统被拆分成多个服务,但是像安全认证、流量控制、日志、监控等功能是每个服务都需要的,如果没有网关,我们就需要在每个服务中单独实现,冗余且不便于统一管理。而且多个微服务可能部署在不同的服务器上,传统方式访问增加了客户端的复杂度。

常见的网关系统有哪些?
Nginx+Lua 服务端网关方案,实现web服务器、反向代理、负载均衡、动静分离等功能。

Netflix Zuul2.x 基于Netty实现了异步IO,可自定义过滤器来处理请求,同时提供了动态路由、监控、弹性负载和安全功能。

SpringCloud Gateway 基于Spring WebFlux,提供统一的路由方式,并且基于Filter链的方式提供了网关的基本功能,如安全、限流、监控等。

Kong 基于OpenResty(Nginx的一个开源版本),是一款高性能、云原生、可扩展的网关系统。

APISIX 基于Nginx和etcd,同样是一款高性能、云原生、可扩展的网关系统。作为NGINX和Kong的替代项目,目前已经是Apache顶级开源项目,在功能、性能、架构全面优于Kong。

ShenYu是一款基于WebFlux的可扩展、高性能、响应式网关,同样是Apache顶级开源项目。插件是ShenYu的灵魂,通过插件扩展功能,自带了路由监控、转发、重定向、限流、熔断等插件。

注:Netflix Zuul和SpringCloud Gateway都是业务网关,用来聚合微服务。

在这里插入图片描述
微服务架构中,请求先经过服务器网关,再到达微服务聚合网关,再寻找具体的微服务。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值