1、网关的作用

网关可以拦截客户端所有请求,对该请求进行权限控制,负载均衡、日志管理、接口调用监控等操作。

1)网关对所有服务会话进行拦截

2)网关安全控制,统一异常处理,XXS、SQL注入

3)权限控制,黑名单和白名单、性能监控、日志打印

2、过滤器与网关的区别是什么?

1)过滤器适合于单个tomcat服务器进行拦截请求;

2)网关是拦截整个微服务所有请求;

3)网关分为内网网关和外网网关,外网网关是针对于开放平台接口;

3、Nginx与Zuul区别

相同点:

1)Zuul和Nginx都可以实现负载均衡、反向代理、过滤请求、实现网关效果。

不同点:

1)Nginx采用C语言编写,Zuul采用java语言编写

2)Zuul负载均衡实现:采用ribbon+eureka实现本地负载均衡;

3)Nginx负载均衡实现:采用服务器端实现负载均衡;

4)Nginx比Zuul功能会更加强大,因为Nginx可以整合一些脚本语言(Nginx+Lua)

5)Nginx适合于服务器端负载均衡,也可以实现网关

6)Zuul适合微服务中实现网关,而且使用技术是java语言

7)最好建议nginx+zuul实现网关

nginx用作实现反向代理,zuul对微服务实现网关拦截

反向代理的目的是隐藏真实ip地址

4、网关框架

Kong Kong是基于nginx+lua进行二次开发的方案

使用网关后,不能直接输入真实地址访问会员服务/订单服务,而是运用了反向代理机制,输入网关地址+服务名称,程序会自动转发到对应的会员服务/订单服务;

f12是捕捉不到真实地址的

公司的token一般放在请求头里面,很少以?号传参

配置完网关后,配置的服务一开始没启动,是不会报错的;只是当你输入地址后,如果这个地址和你配置的相同,而该服务没有启动,才会报错;

zuul配置能够使用分布式config实现实时更新,还是得手动刷新

这个手动刷新有点问题:当你在配置文件上面添加内容,他可以生效;但是当你删减内容,他不会生效,可能是有缓存;

5、bootstrap.yml与application.yml的区别

这个网关我原本用的application.yml,结果一直搜索不到config服务器,一直搜的8888端口;我比对了一下,之前那个config-client就是yml名称为bootstrap,所有我就也改成了bootstrap,结果就可以了,不晓得是什么原因。

=》但是蚂蚁课堂的用的application.yml却可以成功

原因如下:

首先如果你在Controller中使用@Value("${fileName}")去加载git上的配置文件属性,当你用的application.xml时,启动就会报错;

结合以上两个现象得出结论:

1)由于添加了config-client依赖,并且你是application.xml,他的加载顺序比较慢,这是还没有读取到yml配置中的config-server名称,所以这个客户端就会搜索到一个虚拟的config-server,如下

Fetching config from server at: http://localhost:8888

而如果你用的bootstrap.xml,他的执行顺序比较快,所以就加载了yml文件,找到了真正的config-server地址

Fetching config from server at: http://LIJ55MM21H39YNQ:9200/

6、网关集群思路

客户端发送请求统计到Nginx上,再使用Nginx实现反向代理和负载均衡,采用轮询机制转发到网关上。

=》集群时如果用谷歌浏览器可能负载均衡效果显示不出来(需要配置参数),可以用火狐浏览器。但是我的谷歌浏览器却是可以的

zuul 网关的更多相关文章

  1. Spring Cloud Zuul网关 Filter、熔断、重试、高可用的使用方式。

    时间过的很快,写springcloud(十):服务网关zuul初级篇还在半年前,现在已经是2018年了,我们继续探讨Zuul更高级的使用方式. 上篇文章主要介绍了Zuul网关使用模式,以及自动转发机制 ...

  2. SpringCloud实战-Zuul网关服务

    为什么需要网关呢? 我们知道我们要进入一个服务本身,很明显我们没有特别好的办法,直接输入IP地址+端口号,我们知道这样的做法很糟糕的,这样的做法大有问题,首先暴露了我们实体机器的IP地址,别人一看你的 ...

  3. zuul网关入门(一、网关具有的功能)

    1. zuul网关入门(一.网关具有的功能) 1.1. 基本场景 1.1.1. API网关的由来 1.1.2. API网关基本功能 1.2. 高级应用 1.2.1. 亮点 可动态发布的过滤器机制 1. ...

  4. Spring Cloud微服务Ribbon负载均衡/Zuul网关使用

    客户端负载均衡,当服务节点出现问题时进行调节或是在正常情况下进行 服务调度.所谓的负载均衡,就是当服务提供的数量和调用方对服务进行 取舍的调节问题,在spring cloud中是通过Ribbon来解决 ...

  5. SpringCloud Zuul网关的简单理解

    Zuul网关功能 请求路由.服务路由.请求过滤 请求路由 参数配置如下所示,所有能够配置path规则的请求,都会被zuul网关转发到对应的url上. zuul.routes.user-service. ...

  6. Zuul 网关路由

    Zuul 网关路由 路由是微服务架构中不可或缺的一部分,例如:/api/user映射到user服务,/api/shop映射到shop服务. Zuul是一个基于JVM的路由和服务端的负载均衡器.Zuul ...

  7. Spring Cloud Zuul 网关使用与 OAuth2.0 认证授权服务

    API 网关的出现的原因是微服务架构的出现,不同的微服务一般会有不同的服务地址,而外部客户端可能需要调用多个服务的接口才能完成一个业务需求,如果让客户端直接与各个微服务通信,会有以下的问题: 客户端会 ...

  8. zuul网关源码解析

    zuul网关源码解析 zuul请求的生命周期 ZuulServlet ZuulServlet定义了对zuul整个过程的处理,如下: public void service(javax.servlet. ...

  9. Spring cloud Zuul网关异常处理

    Spring cloud Zuul网关异常处理 一 异常测试: 1> 创建一个pre类型的过滤器,并在该过滤器的run方法实现中抛出一个异常.比如下面的实现,在run方法中调用的doSometh ...

  10. Spring Cloud Zuul 网关的分布式系统中整合Swagger(转)和 zuul跨域访问问题

    首先恭喜自己终于找对了努力的方向,很荣幸能在公司接触到微服务架构,也很高兴公司一个大佬哥们愿意带我,他技术确实很牛逼,我也很佩服他,前后端通吃,干了六年能有这样的水平.最近跟着在搞微服务架构,给我分配 ...

随机推荐

  1. 在 linux 下使用 CMake 构建应用程序【转】

    本文转载自:https://www.ibm.com/developerworks/cn/linux/l-cn-cmake/index.html CMake 简介 CMake 是一个跨平台的自动化建构系 ...

  2. HDU1269 迷宫城堡 —— 强连通分量

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1269 迷宫城堡 Time Limit: 2000/1000 MS (Java/Others)    M ...

  3. android NDK 使用(多个)静态库生成动态库

    android NDK 使用(多个)静态库生成动态库. 1.编写Android.mk文件:如下两种方式都可以,用于NDK编译工具生成的两个.a文件来生成最终的libtwolib-second.so动态 ...

  4. cookie绕过验证码登录

    #coding:utf-8 ''' cookie绕过验证码登录,第一步先访问登录页面获取登录前的cookie,第二步用fiddler抓到的手动登录的cookie加入cookie中,登录成功,第三步登录 ...

  5. 从0开始学习Hadoop(2)安装JDK以及设置SSH

    安装JDK 使用ppa/源方式安装 1.添加ppa sudo add-apt-repository ppa:webupd8team/java sudo apt-get update 2.安装oracl ...

  6. undefined reference to 'pthread_create'问题解决(转载)

    转自:http://blog.csdn.net/llqkk/article/details/2854558 由于是Linux新手,所以现在才开始接触线程编程,照着GUN/Linux编程指南中的一个例子 ...

  7. Codeforces Round #386 (Div. 2)G. New Roads [构造][树]

    题目链接:G. New Roads 题意:给出n个结点,t层深度,每层有a[i]个结点,总共有k个叶子结点,构造一棵树. 分析: 考虑一颗树,如果满足每层深度上有a[i]结点,最多能有多少叶子结点 那 ...

  8. bzoj 3714: [PA2014]Kuglarz【最小生成树】

    参考:https://blog.csdn.net/aarongzk/article/details/48883741 没想到吧.jpg 来自题解: "如果用sum[i]表示前i个杯子底球的总 ...

  9. Deribit交易所 websocket API 连接范例

    Deribit websocket API 连接范例,使用JavaScript语言,策略运行在FMZ发明者量化平台. 源码地址:https://www.fmz.com/strategy/147765 ...

  10. Android UI 设计规范

    1. 基础常识 1.1 主流屏幕尺寸 标识 屏幕尺寸 hdpi 480 * 800 xhdpi 720 * 1280 xxhdpi 1080 * 1920 1.2 图标尺寸 标识 启动图标尺寸 菜单图 ...