• 微服务-SpringCloud学习系列(六): 服务网关Zuul


    1.为什么需要服务网关

    ①客户端可能会调用多个微服务,路径维护麻烦,主要是host和port

    ②存在跨域问题

    ③统一身份认证

    为了解决上述问题引入微服务网关的概念。可以了解Nginx的作为网关的使用配置(不能够解决统一身份认证的问题)

     2.Zuul的使用

    ①创建网关服务,引入依赖

     ②配置启动类

     ③路由配置

     面向服务的路由配置,添加注册中心客户端的配置(包括引入依赖,添加启动类配置,application.yml配置)

     简化的路由配置

     3.Zuul的过滤器

     上图有助于理解Zuul和注册中心在微服务中的作用的区别:Zuul所有微服务针对外部客户端的统一路由,注册中心是管理内部所有微服务的通讯录。

     

     ①自定义过滤器需要继承ZuulFilter,并交由Spring管理@Component.

     

     包括:

    a.指定过滤器类型filterType(四种类型pre,routing,post,error)

    b.指定过滤器的执行顺序filterOrder(值越小越先执行)

    c.过滤器是否生效,shouldFilter(true使用此过滤器)

    d.过滤器执行的逻辑run()

    ②身份认证过滤器

     4.Zuul网关的源码简析

      5.总结

    学习网关的作用,zuul的使用配置,自定义zuulFilter

    Zuul的缺点:阻塞式访问的方式如果阻塞过多容易引起资源不足,不支持WebSocket(大多数客户端使用WebSocket实现丰富的效果)。

    虽然Zuul2.0解决了上述问题,但是SpringCloud已将Zuul替换成了SpirngCloud GateWay作为默认的网关组件。

  • 相关阅读:
    Makefile常用函数
    Source Insight 中的 Auto Indenting
    Git中的core.autocrlf选项
    [转] VMware中的Ubuntu无法通过桥接方式上网
    Git基础
    数据结构35:二叉树前序遍历、中序遍历和后序遍历
    数据结构34:二叉树前序遍历、中序遍历和后序遍历
    数据结构33:二叉树顺序存储和链式存储
    数据结构32:树存储结构
    数据结构31:树(Tree)详解
  • 原文地址:https://www.cnblogs.com/masting/p/12826895.html
Copyright © 2020-2023  润新知