为什么微服务一定要有网关?

334次阅读  |  发布于2年以前

一、什么是服务网关

服务网关 = 路由转发 + 过滤器

1、路由转发:接收一切外界请求,转发到后端的微服务上去;

2、过滤器:在服务网关中可以完成一系列的横切功能,例如权限校验、限流以及监控等,这些都可以通过过滤器完成(其实路由转发也是通过过滤器实现的)。

二、为什么需要服务网关

上述所说的横切功能(以权限校验为例)可以写在三个位置:

第一种,缺点太明显,基本不用;第二种,相较于第一点好很多,代码开发不会冗余,但是有两个缺点:

而服务网关恰好可以解决这样的问题:

所以,需要服务网关!!!

三、服务网关技术选型

[] 引入服务网关后的微服务架构如上,总体包含三部分:服务网关、open-service和service。

1、总体流程

2、引入网关的注意点

3、服务网关基本功能

上述功能是网关的基本功能,网关还可以实现以下功能:

4、技术选型

笔者准备自建一个轻量级的服务网关,技术选型如下:

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8