亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

深入剖析網(wǎng)關(guān)gateway原理

 更新時(shí)間:2021年08月27日 17:45:05   作者:沒傘的孩子努力奔跑  
這篇文章主要介紹了網(wǎng)關(guān)gateway,本文從網(wǎng)關(guān)的背景開始講起,一次論述網(wǎng)關(guān)的依賴,負(fù)載均衡,網(wǎng)關(guān)的選型等等進(jìn)行深入的剖細(xì),讓大家可以更深一步的了解

一 背景

微服務(wù)架構(gòu)提供一種簡(jiǎn)單有效的統(tǒng)一的 API入口

負(fù)責(zé)服務(wù)請(qǐng)求路由、組合及協(xié)議轉(zhuǎn)換,并且基于 Filter 鏈的方式提供了權(quán)限認(rèn)證,監(jiān)控、限流等功能。

  • 優(yōu)點(diǎn):

性能強(qiáng)勁:是第一代網(wǎng)關(guān)Zuul的1.6倍。

功能強(qiáng)大:內(nèi)置了很多實(shí)用的功能,例如轉(zhuǎn)發(fā)、監(jiān)控、限流等設(shè)計(jì)優(yōu)雅,容易擴(kuò)展。

  • 缺點(diǎn):

依賴Netty與WebFlux(Spring5.0),不是傳統(tǒng)的Servlet編程模型(Spring MVC就是基于此模型實(shí)現(xiàn)),學(xué)習(xí)成本高。需要Spring Boot 2.0及以上的版本,才支持

二需要的依賴:

 <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-gateway</artifactId>
        </dependency>

   添加配置文件及說明:

server:
port: 9000
spring:
application:
name: sca-gateway
cloud:
gateway:
routes: #配置網(wǎng)關(guān)路由規(guī)則
- id: route01  #路由id,自己指定一個(gè)唯一值即可
uri: http://localhost:8081/ #網(wǎng)關(guān)幫我們轉(zhuǎn)發(fā)的url
predicates: ###斷言(謂此):匹配請(qǐng)求規(guī)則
- Path=/nacos/provider/echo/**  #請(qǐng)求路徑定義,此路徑對(duì)應(yīng)uri中的資源
filters: ##網(wǎng)關(guān)過濾器,用于對(duì)謂詞中的內(nèi)容進(jìn)行判斷分析以及處理
- StripPrefix=1 #轉(zhuǎn)發(fā)之前去掉path中第一層路徑,例如nacos
 

說明

路由(Route) 是 gateway 中最基本的組件之一

表示一個(gè)具體的路由信息載體。

主要定義了下面的幾個(gè)信息:

id,路由標(biāo)識(shí)符,區(qū)別于其他 Route。

uri,路由指向的目的地 uri,即客戶端請(qǐng)求最終被轉(zhuǎn)發(fā)到的微服務(wù)。

predicate,斷言(謂詞)的作用是進(jìn)行條件判斷,只有斷言都返回真,才會(huì)執(zhí)行路由。

filter,過濾器用于修改請(qǐng)求和響應(yīng)信息。

什么是網(wǎng)關(guān)?

服務(wù)訪問(流量)的一個(gè)入口,類似生活中的“海關(guān)“

為什么使用網(wǎng)關(guān)?

服務(wù)安全,統(tǒng)一服務(wù)入口管理,負(fù)載均衡,限流,鑒權(quán)

Spring Cloud Gateway 應(yīng)用的初始構(gòu)建過程(添加依賴,配置

Gateway 服務(wù)的啟動(dòng)底層是通過誰去實(shí)現(xiàn)的?

Netty網(wǎng)絡(luò)編程框架-ServerSocket

Gateway 服務(wù)做請(qǐng)求轉(zhuǎn)發(fā)時(shí)一定要在注冊(cè)中心進(jìn)行注冊(cè)嗎?

不一定,可以直接通過遠(yuǎn)端url進(jìn)行服務(wù)訪問

三  負(fù)載均衡

需要的porm文件是nacos的配置和包,是通過nacos配置中心,尋找實(shí)例。

網(wǎng)關(guān)層面是如何實(shí)現(xiàn)負(fù)載均衡的?

通過服務(wù)名去查找具體的服務(wù)實(shí)例

網(wǎng)關(guān)層面是如何通過服務(wù)名查找服務(wù)實(shí)例的?

Ribbon

你了解Ribbon中的哪些負(fù)載均衡算法?

輪詢,權(quán)重,hash,……可通過IRule接口進(jìn)行查看分析

網(wǎng)關(guān)進(jìn)行請(qǐng)求轉(zhuǎn)發(fā)的流程是怎樣,有哪些關(guān)鍵對(duì)象?

XxxHandlerMapping,Handler,。。。

網(wǎng)關(guān)層面服務(wù)的映射方式怎樣的?

謂詞-path,…,服務(wù)名/服務(wù)實(shí)例

網(wǎng)關(guān)層如何記錄服務(wù)的映射?

通過map,并要考慮讀寫鎖的應(yīng)用

下圖是定義在網(wǎng)關(guān)層面定義全局過濾器

網(wǎng)關(guān)(Gateway)

誕生的背景?

第一:統(tǒng)一微服務(wù)訪問的入口,

第二:對(duì)系統(tǒng)服務(wù)進(jìn)行保護(hù),

第三進(jìn)行統(tǒng)一的認(rèn)證,授權(quán),限流

網(wǎng)關(guān)的選型?

Netifix Zuul,Spring Cloud Gateway,…

Spring Cloud Gateway的入門實(shí)現(xiàn)

添加依賴,路由配置,啟動(dòng)類

Spring Cloud Gateway中的負(fù)載均衡?

網(wǎng)關(guān)服務(wù)注冊(cè),服務(wù)的發(fā)現(xiàn),基于uri:lb://服務(wù)id方式訪問具體服務(wù)實(shí)例

Spring Cloud Gateway中的斷言配置?

掌握常用幾個(gè)就可,用時(shí)可以通過搜索引擎去查

Spring Cloud Gateway中的過濾器配置?

掌握過濾器中的兩大類型-局部和全局

Spring Cloud Gateway中的限流設(shè)計(jì)?

Sentinel

Gateway在互聯(lián)網(wǎng)架構(gòu)中的位置?

nginx->gateway–>微服務(wù)–>微服務(wù)

Gateway底層負(fù)載均衡的實(shí)現(xiàn)?

Ribbon

Gateway應(yīng)用過程中設(shè)計(jì)的主要概念?

路由id,路由uri,斷言,過濾器

Gateway中你做過哪些斷言配置?

after,header,path,cookie,…

Gateway中你用的過濾器有哪些?

添加前綴,去掉前綴,添加請(qǐng)求頭,…,負(fù)載均衡,…

以上就是深入理解網(wǎng)關(guān)gateway的詳細(xì)內(nèi)容,更多關(guān)于網(wǎng)關(guān)gateway的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • MobaXterm最新激活專業(yè)版

    MobaXterm最新激活專業(yè)版

    MobaXterm是一款遠(yuǎn)程終端控制軟件,集串口,SSH遠(yuǎn)程登錄和FTP傳輸三合一的工具,便攜版操作簡(jiǎn)單,使用非常方便,這篇文章主要介紹了MobaXterm激活專業(yè)版,需要的朋友可以參考下
    2023-06-06
  • 獲取鍵盤鍵的值 集合 方便監(jiān)控鍵盤事件

    獲取鍵盤鍵的值 集合 方便監(jiān)控鍵盤事件

    整理的比較全的鍵盤值的集合,以后大家在開發(fā)過程中,可以直接拿來判斷。
    2009-08-08
  • 玩轉(zhuǎn)markdown 分享幾個(gè)需要用到的工具

    玩轉(zhuǎn)markdown 分享幾個(gè)需要用到的工具

    markdown是一個(gè)面向?qū)懽鞯恼Z法引擎,markdown的最終目的都是解析成html用于網(wǎng)頁瀏覽,所以它兼容html語法,即你可以在 markdown文檔中使用原生的html標(biāo)簽
    2016-08-08
  • JSON常用的幾種注釋代碼示例

    JSON常用的幾種注釋代碼示例

    JSON是一種輕量級(jí)的數(shù)據(jù)交換格式,下面這篇文章主要給大家介紹了關(guān)于JSON常用的幾種注釋,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-08-08
  • 關(guān)于爬蟲和反爬蟲的簡(jiǎn)略方案分享

    關(guān)于爬蟲和反爬蟲的簡(jiǎn)略方案分享

    這篇文章主要給大家介紹了一些關(guān)于爬蟲和反爬蟲的簡(jiǎn)略方案的相關(guān)資料,文中介紹的非常詳細(xì),對(duì)大家理解和學(xué)習(xí)爬蟲與反爬蟲具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-01-01
  • git可視化工具Sourcetree使用全攻略(git沖突解決)

    git可視化工具Sourcetree使用全攻略(git沖突解決)

    本文主要介紹了git可視化工具Sourcetree使用全攻略,文中通過圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • ChatGPT體驗(yàn)輔助寫代碼功能實(shí)測(cè)(附編程測(cè)試)

    ChatGPT體驗(yàn)輔助寫代碼功能實(shí)測(cè)(附編程測(cè)試)

    ChatGPT最近霸屏了,咱們也來玩玩,下面這篇文章主要給大家介紹使用ChatGPT輔助寫代碼的體驗(yàn),需要的朋友可以參考下
    2023-02-02
  • 在Visual Studio Code環(huán)境中使用SVN的方案

    在Visual Studio Code環(huán)境中使用SVN的方案

    這篇文章主要介紹了在Visual Studio Code環(huán)境中使用SVN的方案,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • 踩坑記錄關(guān)于"authentication failed "的解決方法

    踩坑記錄關(guān)于"authentication failed "的解決方法

    今天給大家分享我的踩坑記錄關(guān)于報(bào)錯(cuò) authentication failed,這個(gè)報(bào)錯(cuò)的原因是“身份驗(yàn)證失敗”,本文給大家分享我的解決方法,感興趣的朋友跟隨小編一起看看吧
    2023-01-01
  • vscode使用nuget包管理工具

    vscode使用nuget包管理工具

    這篇文章介紹了vscode使用nuget包管理工具的方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06

最新評(píng)論