为了实现三种服务三种情况下的隔离。

就像我们访问外网需要一个代理。

我们不需要访问真实的ip,只需要访问 这个服务的代理服务器即可,就会被转发到真实的ip,隐藏了真实服务器的ip地址。
就像访问域名,它会给你的请求分到别的具体ip服务器。

Nacos是做服务的注册与发现(暂不讨论其他功能)的,内部封装了ribbon负载均衡,与open feign整合使用能够很灵活的开发项目;
Nginx能够实现反向代理和负载均衡,一般用来搭建服务器的集群,实现高并发;

作用不同:
区别就是Nacos能够做的服务的注册与发现,Nginx可以实现对服务端的反向代理,但做不到主动让服务的发现。
nginx 可以对 服务器集群做反向代理。
下面这是 nginx 的代理,nacos的代理 都是分到具体服务器(具体的ip和端口),而不是分到集群。

微服务都需要集群,你ngnix也需要集群。





有了nginx做网关,为啥还要用到gateway呢?
首先这两种网关的定义不一样
nginx用户访问的总入口,也就是前端页面的容器,流量网关。比如对某个ip服务器的访问。
gateway的定义是针对每一个业务,微服务,属于业务网关。
gateway的主要功能有,路由,断言,过滤器,利用它的这些特性,可以做流量控制(对流量进行筛选。
nginx做网关,更多的是做总流量入口,反向代理,负载均衡等,还可以用来做web服务器。
都对流量做负载均衡。
nginx对总流量复杂均衡,gateway对业务流量做负载均衡。
所以得配置nacos的地址。


全局过滤器的作用也是处理一切进入网关的请求和微服务响应,与 GatewayFilter 的作用一样。区别在于 GlobalFilter 的逻辑可以写代码来自定义规则;而 GatewayFilter 通过配置定义,处理逻辑是固定的。
当然gate way是有自己的全局过滤器。

过滤器 如果 order (用来排序的)的值都一样,那就默认过滤器>当前过滤器> GlobalFilter。
过滤器执行的顺序规则如下:
