SpringCloud-Gateway入门简介

94 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第1天,点击查看活动详情

SpringCloud 简介

随着现在微服务的迅速发展诞生了很多新的理念,可以简单 的把 SpringCloud 理解为一种理念,而相对于 SpringCloud 这个理念则对应有多个具体的实现,现在比较常用的就是:
1、spring cloud alibaba 这一套是阿里出的对应实现。
2、spring cloud Tencent 这一套则是腾讯出的对应实现。
3、spring cloud Netflix 这一套官方已经停止更新了 ,但是不妨碍还有很多公司在使用。

spring cloud Netflix

spring cloud Netflix 虽然现在已经停止更新了但是很多公司还在继续使用着它的东西,比如现在我们公司使用其中的 Gateway 作为网关。
这个也是 spring 官方他推荐的网关,替换掉了之前的 zuul 网关

什么是api网关

API网关作用就是把各个服务对外提供的 APi 汇聚起来,让外界看起来所有的服务都是一个统一的接口,同时也可以在网关中提供额外的功能。总结起来网关其实就是所有项目的一个统一入口,想要从外部访问集群里面的服务那么就要通过网关来进行访问。

举个最简单的例子:

比如有三台服务器,三个服务分别是: ip:8080、ip:8081、ip:8082,他们其实就是同一个项目部署了多个而已,当外部需要访问这个项目的时候并不知道就需要访问哪一个服务,这个时候网关的作用就发挥出来了。
在外部访问的时候可以使用 nginx 去做网关,但是 nginx 是在外部作为一个独立的系统来分发请求,这个时候 Gateway 也可以做这个事情,所有的请求首先到 Gateway 中然后分发给下面的服务。
Gateway相对于 nginx 的区别在于它是一个 java 的项目,所以我们是可以在 Gateway 中自定义一些功能,而 nginx 是一个独立的软件我们只能通过配置文件去配置它提供的功能。