当前位置:首页 > 服务端 > gateway原理

gateway原理

2022年11月09日 11:37:49服务端8

gateway原理 _ JavaClub全栈架构师技术笔记
流量进入网关后先进入handler mapping 进行匹配具体的route ,再通过handler 处理route。处理请求的时候经过过滤器链处理一系列过滤器(包括route中的自定义filter和系统自带的全局过滤器)进请求处理,最终到达被代理的服务。

gateway原理 _ JavaClub全栈架构师技术笔记
GatewayProperties用于从配置文件中加载前缀为 spring.cloud.gateway的配置信息
gateway原理 _ JavaClub全栈架构师技术笔记
spring gateway 接收请求流程
gateway原理 _ JavaClub全栈架构师技术笔记

解析配置文件,生成元素为Route对象的集合。然后根据request中的URL匹配其中的某条Route对象。
↓↓↓
gateway原理 _ JavaClub全栈架构师技术笔记
然后将路由信息放到上下文
gateway原理 _ JavaClub全栈架构师技术笔记
同时获取对应的handler,用于invokeHandler方法的参数
gateway原理 _ JavaClub全栈架构师技术笔记

寻找到路由后,执行处理过程
gateway原理 _ JavaClub全栈架构师技术笔记

从route中的取出自定义过滤器,然后和全局过滤器(如负载均衡过滤器)合并,并排序(排序原理)。然后将集合放到过滤器链中。之后执行所有的过滤器。
gateway原理 _ JavaClub全栈架构师技术笔记

负载均衡过滤器
获取route对象中的URL及微服务名称(如果URL是纯连接)。从容器中获取一个loadBalancer对象,同时根据serviceId从服务注册中心获取对应的URL。再使用轮询策略获取url。然后在将访问到gateway的地址替换成服务的请求地址,使用httpClient 进行访问。

作者:猛男陈朵朵
来源链接:https://blog.csdn.net/qq_41948178/article/details/109480168

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。


本文链接:https://www.javaclub.cn/server/68763.html

标签: Gateway
分享给朋友:

“gateway原理” 的相关文章

体验SpringCloud Gateway

体验SpringCloud Gateway

Spring Cloud Gateway是Spring Cloud技术栈中的网关服务,本文实战构建一个SpringCloud环境,并开发一个SpringCloud Gateway应用,快速体验网关服务; 环境信息 操作系统:win10(64位) JDK:1...

SpringCloud(四)GateWay网关

SpringCloud(四)GateWay网关

GateWay网关 概述简介 Gateway是在 Spring生态系统之上构建的AP网关服务,基于 Spring5, Spring Boot2和 Project Reactor等技术。 Gateway旨在提供一种简单而有效的方式来对API进行路由,以及提...

gRPC+gRPC Gateway+swagger小记

gRPC+gRPC Gateway+swagger小记

gRPC+gRPC Gateway+swagger小记 前言 本文记录了grpc-gateway的简单使用。 定义proto 先来看看最常规的 syntax = "proto3"; package protos; service Greet...

SpringCloud创建Gateway模块

SpringCloud创建Gateway模块

1.说明 本文详细介绍Spring Cloud创建Gateway模块的方法, 基于已经创建好的Spring Cloud父工程, 请参考SpringCloud创建项目父工程, 和已经创建好的Eureka子工程, 请参考SpringCloud创建Eureka模块, 创建G...

SpringCloud系列之网关(Gateway)应用篇

SpringCloud系列之网关(Gateway)应用篇

@ 目录 前言 项目版本 网关访问 鉴权配置 限流配置 前言 由于项目采用了微服务架构,业务功能都在相应各自的模块中,每个业务模块都是以独立的项目运行着,对外提供各自的服务接口...

微服务网关springcloud gateway整合sentinel自定义异常

异常包括限流异常和熔断降级异常。 1. 定义配置类方式 package com.ftsafe.config; import com.alibaba.csp.sentinel.adapter.gateway.sc.callback.BlockRequestHandle...

SpringCloud之网关Gateway

SpringCloud之网关Gateway

这期内容用的是Spring Cloud官方的服务路由Spring Cloud Gateway  一、gateway基本使用 1、含义 Spring Cloud Gateway是Spring官方基于Spring5.0、SpringBoot2.0...

Spring Cloud Gateway中文文档一到五章(3.1.0)

Spring Cloud Gateway中文文档一到五章(3.1.0)

Spring Cloud Gateway 3.1.0 本项目提供了一个基于Spring 5、Spring Boot 2 和 Project Reactor的 Spring 生态系统之上的 API 网关。Spring Cloud Gateway 旨在...

GateWay路由网关的概述与入门详解

GateWay路由网关的概述与入门详解

一、概述简介 官网:https://cloud.spring.io/spring-cloud-static/spring-cloud-gateway/2.2.1.RELEASE/reference/html/ 1.是什么? Cloud全家桶中...

九、Spring Cloud 微服务之 Gateway

九、Spring Cloud 微服务之 Gateway

文章目录 Gateway 新一代网关 1. 概述简介 1.1 是什么? 1.2 能干嘛 1.3 微服务架构...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。