网站大量收购独家精品文档,联系QQ:2885784924

springcloud微服务架构笔记三.pdf

  1. 1、本文档共46页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1 微服务网关概述 在学习完前面的知识后,微服务架构已经初具雏形。但还有一些问题:不同的微服务一般会有不同的网 络地址, 端在 这些微服务时必须记住几十甚至几百个地址,这对于 端方来说太复杂也难以 维护。如下图: 如果让 端直接与各个微服务通讯,可能会有很多问题: 端会请求多个不同的服务,需要维护不同的请求地址,增加开发难度 在某些场景下存在跨域请求的问题 加大身份认证的难度,每个微服务需要 认证 因此,我们需要一个微服务网关,介于 端与 之间的中间层,所有的外部请求都会先经过微服 务网关。 端只需要与网关交互,只知道一个网关地址即可,这样简化了开发还有以下优点: 1、易于 2、易于认证 3、减少了 端与各个微服务之间的交互次数 1.1 服务网关的概念 1.1.1 什么是微服务网关 API网关是一个 ,是系统对外的唯一入口。API网关封装了系统内部架构,为每个 端提供 一个定制的API。API网关方式的 要点是,所有的 端和消费端都通过统一的网关接入微服务,在 网关层处理所有的非业务功能。通常,网关也是提供REST/HTTP的 API。服务端通过API-GW 和 管理服务。 1.1.2 作用和应用场景 网关具有的职责,如身份验证、 、负载均衡、缓存、请求分片与管理、静态响应处理。当然,最主 要的职责还是与“外界联系”。 1.2 常见的API网关实现方式 Kong 基于Nginx+Lua开发,性能高,稳定,有多个可用的插件(限流、鉴权等等)可以开箱即用。 问题:只支持Http协议;二次开发, 扩展困难;提供管理API ,缺乏更易用的管控、配置方 式。 Zuul Netflix开源,功能丰富,使用J A 开发,易于二次开发;需要运行在web容器中,如Tomcat。 问题:缺乏管控,无法动态配置;依赖组件较多;处理Http请求依赖的是Web容器,性能不如 Nginx; Traefik Go语言开发;轻量易用;提供大多数的功能:服务路由,负载均衡等等;提供WebUI 问题:二进制文件部署,二次开发难度大;UI 的是 ,缺乏配置、管理能力; Spring Cloud Gateway SpringCloud提供的网关服务 Nginx+lua实现 使用Nginx的反向 和负载均衡可实现对api 的负载均衡及高可用 问题:自 的问题和网关本身的扩展性 1.3 基于Nginx的网关实现 1.3.1 Nginx 1.3.2 正向/反向 (1)正向 正向 ,它 的是 端,代 端发出请求,是一个位于 端和原始 (origin server)之 间的 ,为了从原始 取得内容, 端向 发送一个请求并指定目标(原始 ) ,然后 向原始 转交请求并将获得的内容返回给 端。 端必须要进行一些特别的设置才能使用 正向 。 (2)反向 多个 端给 发送的请求,Nginx 接收到之后,按照一定的规则分发给了后端的业务处 理 进行处理了。此时~请求的来源也就是 端是明确的,但是请求具体由哪台 处理的并 不明确了,Nginx扮演的就是一个反向 角色。 端是无感知 的存在的,反向 对外都是透 明的, 者并不知道自己 的是一个 。因为 端不需要任何配置就可以 。反向代 理,它 的是服务端,代服务端接收请求,主要用于 集群分布式部署的情况下,反向

文档评论(0)

159****9610 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6044052142000020

1亿VIP精品文档

相关文档