一、什么是网关?
网关又称网间连接器,协议转换器。网关再网络层以上实现网络互连,是复杂的网络互连设备,仅用于两个高层协议不同的网络互连。网关即可以用于广局域网(跨越较大的地域)互连,也可以用于局域网互连。网关是一种充当转换重任的计算机系统或设备。使用不同的通信协议、数据格式或者语言,甚至体系结构完全不同的两种系统之间,网关是一个翻译器。与网桥(它利用无线传输方式实现在两个或多个网络之间搭起通信的桥梁;无线网桥从通信机制上分为电路型网桥和数据型网桥)只是简单地传达信息不同,网关对收到的消息要重新打包,以适应目的系统的需求。同层–应用层。
1、zuul是什么
zuul是一个netflix开源的一个API Gateway服务器,本质上是一个web servlet应用,将所有微服务接口统一聚合,统一对外暴露,结合Ribbon实现负载均衡,可以在Zuul中统一再身份和权限认证,防止非法请求API,可实现流量监控功能,高流量情况下对服务进行降级处理。
2、zuul主要有两大功能
请求路由和过滤
其中路由功能负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础而过滤器功能主要是负责请求处理过程进行干预是实现请求校验、服务聚合等功能的基础。
zuul和Eureka进行整合,将zuul自身注册为Eureka服务治理下的应用,同时从Eureka中获得其他微服务的信息,也即以后的访问微服务都是通过zuul跳转获得。
3、服务网关的作用
将权限校验的逻辑写在网关的过滤器中,后端服务不需要关注权限校验的代码,所以服务的Jar包中也不会引入权限校验的代码,所以服务的Jar包中也不会引入权限校验的逻辑,不会增加jar的大小。
如果想修改权限校验的逻辑,只需要修改网关的权限逻校验的过滤器即可,而不需要升级所有已存在的微服务
4、Zuul网关
Zuul是Netfix(美国奈飞公司,简称网飞。是一家会员订阅制的流媒体播放平台,总部位于美国加利福尼亚州洛斯盖图)开源的微服务网关,1.路由,2.控制,3.控流。
作用:api网关,路由,负载均衡等多种作用
简介:类似nginx,反向大力的功能,不过netfix自己增加了一些配合其他组件的特性。
在微服务架构中,后端服务往往不直接开放给调用端,而是通过一个API网关根据请求的url,路由到相应的服务。当添加API网关后,在第三方调用端和服务提供方之间就创建了一面墙,这面墙直接与调用方通信进行权限控制,后将请求均衡分发给后台服务端
其核心是一系列的过滤器,可以完成以下功能点:
1、身份人中与安全,识别每一个资源的要整要求,并拒绝那些与要求不符的请求
2、审查,监控,
3、动态路由
4、负载分配,为每一种负载类型份配对应的容量,并弃用超出限定值的请求
5、限流,限制用户流