精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Spring Cloud Gateway 網(wǎng)關(guān)非常實(shí)用的八個(gè)開(kāi)發(fā)技巧,太實(shí)用了

開(kāi)發(fā) 前端
Spring Cloud Gateway 提供兩種 RouteDefinitionRepository 實(shí)現(xiàn)。第一種是 InMemoryRouteDefinitionRepository,它只存在于一個(gè)網(wǎng)關(guān)實(shí)例的內(nèi)存中。這種類(lèi)型的存儲(chǔ)庫(kù)不適合在多個(gè)網(wǎng)關(guān)實(shí)例中填充路由。

環(huán)境:SpringBoot2.7.18 + SpringCloud Gateway2021.0.7

1. 簡(jiǎn)介

Spring Cloud Gateway是Spring Cloud生態(tài)系統(tǒng)中的官方API網(wǎng)關(guān)解決方案,它構(gòu)建在Spring Framework 5、Spring Boot以及Project Reactor之上,旨在為微服務(wù)架構(gòu)提供動(dòng)態(tài)路由、監(jiān)控、彈性、請(qǐng)求限流、路徑重寫(xiě)、過(guò)濾等功能。作為Zuul的替代方案,Spring Cloud Gateway具備非阻塞、異步的特性,能夠處理高并發(fā)的請(qǐng)求。

Spring Cloud Gateway提供了靈活的網(wǎng)關(guān)解決方案,允許開(kāi)發(fā)者通過(guò)簡(jiǎn)單的配置實(shí)現(xiàn)路由、負(fù)載均衡、安全認(rèn)證、限流、監(jiān)控和日志等功能。它支持多種路由策略,包括基于路徑、請(qǐng)求參數(shù)、請(qǐng)求頭、主機(jī)等的路由,并預(yù)置了許多常用的過(guò)濾器,如請(qǐng)求限流、熔斷器等,也支持自定義過(guò)濾器。

Spring Cloud Gateway基于Actuator提供了一些非常實(shí)用的API幫助管理API接口。引入Actuator依賴(lài)后就可以直接使用

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

2. 實(shí)戰(zhàn)案例

2.1 查看路由詳細(xì)信息

Spring Cloud Gateway添加了一種新的、更詳細(xì)的格式。它為每個(gè)路由添加了更多的細(xì)節(jié),讓你可以查看與每個(gè)路由關(guān)聯(lián)的謂詞和過(guò)濾器以及任何可用的配置。接口/actuator/gateway/route的示例如下:

[
  {
    "predicate": "Paths: [/cloud-gateway/**], match trailing slash: true",
    "metadata": {
      "nacos.instanceId": null,
      "nacos.weight": "1.0",
      "nacos.cluster": "DEFAULT",
      "nacos.ephemeral": "true",
      "nacos.healthy": "true",
      "management.port": "8188",
      "preserved.register.source": "SPRING_CLOUD"
    },
    "route_id": "ReactiveCompositeDiscoveryClient_cloud-gateway",
    "filters": [
      "[[StripPrefix parts = 1], order = 1]",
      "[[RewritePath /cloud-gateway/?(?<remaining>.*) = '/${remaining}'], order = 1]"
    ],
    "uri": "lb://cloud-gateway",
    "order": 0
  },
  ...
]

通過(guò)如下配置可以關(guān)閉此功能

spring:
  cloud:
    gateway:
      actuator:
        verbose:
          enabled: false

2.2 全局過(guò)濾器查看

要查看應(yīng)用于路由的全局過(guò)濾器,通過(guò)接口/actuator/gateway/globalfilters以 GET方式請(qǐng)求。示例如下:

{
    "org.springframework.cloud.gateway.filter.WebsocketRoutingFilter@1d1deb11": 2147483646,
    "org.springframework.cloud.gateway.filter.ReactiveLoadBalancerClientFilter@221961af": 10150,
    "org.springframework.cloud.gateway.filter.ForwardRoutingFilter@1cfb7450": 2147483647,
    "org.springframework.cloud.gateway.filter.RemoveCachedBodyFilter@1e288c76": -2147483648,
    "org.springframework.cloud.gateway.filter.RouteToRequestUrlFilter@738ed8f5": 10000,
    "org.springframework.cloud.gateway.filter.GatewayMetricsFilter@18d1d137": 0,
    "com.pack.common.filters.SecondFilter@38874eb5": 0,
    "com.pack.gray.loadbalancer.GrayReactiveLoadBalancerClientFilter@76b019c4": 10150,
    "org.springframework.cloud.gateway.filter.AdaptCachedBodyGlobalFilter@41463c56": -2147482648,
    "org.springframework.cloud.gateway.filter.LoadBalancerServiceInstanceCookieFilter@32ddcca": 10151,
    "org.springframework.cloud.gateway.filter.NettyRoutingFilter@1ddc8fc": 2147483647,
    "com.pack.common.filters.BrushProofFilter@55202ba6": -2,
    "org.springframework.cloud.gateway.filter.NettyWriteResponseFilter@77d58f3a": -1,
    "com.pack.common.filters.FirstFilter@2ef1fc8a": 1,
    "org.springframework.cloud.gateway.filter.ForwardPathFilter@478c84aa": 0
}

每一個(gè)過(guò)濾器后的數(shù)字是該過(guò)濾器的執(zhí)行順序,值越小,越先執(zhí)行。

2.3 路由過(guò)濾器

要獲取應(yīng)用在路由上的GatewayFilter工廠(chǎng),通過(guò)接口/actuator/gateway/routefilters 以GET方式請(qǐng)求,示例如下:

圖片圖片

以上包括了系統(tǒng)默認(rèn)的及自定義的網(wǎng)關(guān)過(guò)濾器工廠(chǎng)【CustomGatewayFilterFactory】。

2.4 路由刷新

要清除路由緩存,通過(guò)接口/executor/gateway/refresh 以POST方式請(qǐng)求。該請(qǐng)求返回一個(gè)沒(méi)有響應(yīng)體的200。

圖片圖片

當(dāng)首次訪(fǎng)問(wèn)路由時(shí)會(huì)通過(guò)RouteLocator進(jìn)行路由的查找,而這個(gè)具體實(shí)現(xiàn)是通過(guò)CachingRouteLocator進(jìn)行查找路由,查找到路由以后會(huì)將其緩存在Map集合中。該RouteLocator是個(gè)監(jiān)聽(tīng)程序,會(huì)監(jiān)聽(tīng)RefreshRoutesEvent事件,當(dāng)收到該事件后會(huì)重新獲取路由進(jìn)行緩存。

2.5 獲取定義的路由

要獲取網(wǎng)關(guān)中定義的路由,通過(guò)接口/executor/gateway/routes以GET方式請(qǐng)求。

[
  {
    "predicate": "Paths: [/cloud-gateway/**], match trailing slash: true",
    "metadata": {
      "nacos.instanceId": null,
      "nacos.weight": "1.0",
      "nacos.cluster": "DEFAULT",
      "nacos.ephemeral": "true",
      "nacos.healthy": "true",
      "management.port": "8188",
      "preserved.register.source": "SPRING_CLOUD"
    },
    "route_id": "ReactiveCompositeDiscoveryClient_cloud-gateway",
    "filters": [
      "[[StripPrefix parts = 1], order = 1]",
      "[[RewritePath /cloud-gateway/?(?<remaining>.*) = '/${remaining}'], order = 1]"
    ],
    "uri": "lb://cloud-gateway",
    "order": 0
  },
  ...
]

字段說(shuō)明:

屬性

類(lèi)型

描述

route_id

String

路由id

route_object.predicate

Object

路由謂詞

route_object.filters

Array

應(yīng)用于路由的 GatewayFilter 工廠(chǎng)

order

Number

路由順序

2.6 獲取特定路由信息

要獲取單個(gè)路由的信息,通過(guò)接口 /actuator/gateway/routes/{id}(例如,/actuator/gateway/routes/first_route)以GET方式請(qǐng)求。示例如下:

圖片圖片

字段說(shuō)明:

屬性

類(lèi)型

描述

id

String

路由ID

predicates

Array

路由謂詞集合。每項(xiàng)都定義了給定謂詞的名稱(chēng)和參數(shù)

filters

Array

應(yīng)用于路線(xiàn)的過(guò)濾器集合

uri

String

路由的目標(biāo) URI

order

Number

路由順序

2.7 創(chuàng)建&刪除路由

要?jiǎng)?chuàng)建路由,通過(guò)接口/gateway/routes/{id_route_to_create}以POST方式請(qǐng)求,請(qǐng)求內(nèi)容為指定路由字段的 JSON 格式(請(qǐng)參閱 2.6)。

要?jiǎng)h除路由,通過(guò)接口 /gateway/routes/{id_route_too_delete}以DELETE方式請(qǐng)求。

創(chuàng)建路由

圖片圖片

查詢(xún)創(chuàng)建的路由

圖片圖片

注意:默認(rèn)創(chuàng)建的路由是存儲(chǔ)在內(nèi)存中的,重啟服務(wù)后就沒(méi)有了。

刪除路由

圖片

2.8 路由共享

Spring Cloud Gateway 提供兩種 RouteDefinitionRepository 實(shí)現(xiàn)。第一種是 InMemoryRouteDefinitionRepository,它只存在于一個(gè)網(wǎng)關(guān)實(shí)例的內(nèi)存中。這種類(lèi)型的存儲(chǔ)庫(kù)不適合在多個(gè)網(wǎng)關(guān)實(shí)例中填充路由。

為了在 Spring Cloud Gateway 實(shí)例集群中共享路由,可以使用 RedisRouteDefinitionRepository。要啟用此類(lèi)存儲(chǔ)庫(kù),必須將以下屬性設(shè)置為 true:spring.cloud.gateway.redis-route-definition-repository.enabled 與 RedisRateLimiter 篩選器工廠(chǎng)一樣,它也需要使用 spring-boot-starter-data-redis-reactive 。

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-data-redis-reactive</artifactId>
</dependency>

開(kāi)啟Redis存儲(chǔ)功能

spring:
  cloud:
    gateway:
      redis-route-definition-repository:
        enabled: true
責(zé)任編輯:武曉燕 來(lái)源: Spring全家桶實(shí)戰(zhàn)案例源碼
相關(guān)推薦

2022-12-01 16:53:27

NPM技巧

2010-09-01 13:55:14

CSS

2024-03-27 14:06:58

Python代碼開(kāi)發(fā)

2023-12-27 14:04:00

Spring框架參數(shù)

2016-05-10 10:16:13

JavaScript技巧

2022-03-18 21:27:36

Python無(wú)代碼

2021-05-19 15:06:44

MySQL數(shù)據(jù)庫(kù)命令

2021-12-11 23:13:16

Python語(yǔ)言技巧

2024-08-27 12:18:23

函數(shù)Python

2022-11-01 15:57:44

2023-09-21 12:37:34

IDEA

2020-05-28 08:59:40

Python機(jī)器學(xué)習(xí)開(kāi)發(fā)

2022-12-15 16:38:17

2022-12-16 17:01:15

Web API開(kāi)發(fā)

2025-07-29 01:22:00

2020-09-23 09:13:47

Docker

2011-05-19 13:15:44

PHP

2024-12-20 17:29:34

SpringBootAOP開(kāi)發(fā)

2022-08-11 09:00:31

Audio APIWeb

2017-09-05 08:57:02

Linux命令行技巧
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

91成人在线视频| 国产视频久久久久| 久久在线中文字幕| 蜜桃成人在线视频| 久久精品国产**网站演员| 色在人av网站天堂精品| 丰腴饱满的极品熟妇| a一区二区三区亚洲| 欧美日韩国产丝袜美女| 成年人免费观看的视频| 天天干天天爽天天操| 七七婷婷婷婷精品国产| 久久久欧美精品| 成人三级视频在线观看| 日韩三级毛片| 精品日韩欧美在线| 视色视频在线观看| 香蕉伊大人中文在线观看| 日韩美女久久久| 日韩欧美视频一区二区| 色综合免费视频| 国产乱妇无码大片在线观看| 国产精品白丝jk喷水视频一区| 九九视频免费观看| 围产精品久久久久久久| 一本色道久久综合亚洲精品小说| 99久久人妻精品免费二区| 精品国产亚洲一区二区三区在线 | 国产成人综合在线播放| 国产久一一精品| www五月天com| 一区二区三区导航| 久久久免费电影| 久久一二三四区| 欧美有码视频| 久热精品视频在线观看一区| 欧美美女性生活视频| 成人久久一区| 在线成人中文字幕| 一级片视频免费看| 蜜桃精品wwwmitaows| 精品性高朝久久久久久久| 精品熟女一区二区三区| 荡女精品导航| 亚洲精品一区二区三区精华液| 激情文学亚洲色图| 成人在线视频国产| 91麻豆精品国产无毒不卡在线观看| 亚洲国产精品三区| 久久青草免费| 欧美精品乱码久久久久久| 日韩一区二区三区不卡视频| 国产亚洲欧美日韩精品一区二区三区 | 日韩精品一二三四区| wwwxx日本| 久久香蕉精品香蕉| 日韩av综合网站| 久久久久亚洲av无码专区桃色| 丝袜美腿综合| 亚洲视频在线观看网站| 欧美另类69xxxx| 999久久久免费精品国产| 久久精品亚洲一区| 免费在线观看日韩| 亚洲一区观看| 国产精品一区二区三区免费视频| 一二三区在线播放| 国产成人免费在线观看不卡| 国产精品一区二区三区精品| 午夜视频免费看| 国产色产综合色产在线视频| 亚洲福利av| a级在线观看| 欧美日韩免费一区| 一道本在线免费视频| 视频在线观看免费影院欧美meiju 视频一区中文字幕精品 | 久久久久久久久久久电影| 神马影院我不卡| 国产网站在线免费观看| 亚洲国产视频一区| 黑人粗进入欧美aaaaa| 日韩一级特黄| 亚洲激情视频在线观看| 国产欧美一区二区三区在线观看视频| 欧美xxxxx视频| 欧美—级高清免费播放| 久久久蜜桃一区二区| 久久精品国产在热久久| 国产伦精品一区二区三区照片91| 毛片在线免费| 一区二区三区日韩欧美| 欧美视频第一区| 国产精品一区二区精品视频观看| 精品伊人久久97| 99热6这里只有精品| 好吊视频一区二区三区四区| 国产精品91免费在线| 国内精品国产成人国产三级| 久久众筹精品私拍模特| 香蕉视频在线网址| 色黄视频在线观看| 欧美一区二区在线不卡| 法国伦理少妇愉情| 欧美视频亚洲视频| 国产精品一区二区久久| 人人妻人人澡人人爽精品日本| 国产日本欧洲亚洲| www.xxx麻豆| 亚洲精品一区av| 亚洲欧美色图片| 青青草手机在线视频| 全部av―极品视觉盛宴亚洲| 国产视频精品网| 色帝国亚洲欧美在线| 欧美日韩亚洲高清一区二区| 精品人妻一区二区三区日产乱码卜| 婷婷久久综合| 国产精品第10页| 性感美女视频一二三| 亚洲精品五月天| 岛国av免费在线| 自拍亚洲一区| 91国产中文字幕| 懂色av成人一区二区三区| 国产精品三级av| 午夜免费精品视频| 日韩av资源网| 国模视频一区二区| www.桃色av嫩草.com| 国产精品不卡一区二区三区| 亚洲精品高清无码视频| 国产一区二区三区站长工具| 668精品在线视频| 婷婷五月综合久久中文字幕| 亚洲午夜久久久久中文字幕久| 在线视频观看91| 97精品一区| 91精品国产自产在线| 在线视频自拍| 欧美日韩极品在线观看一区| 女人裸体性做爰全过| 日韩高清不卡一区二区三区| 日本日本精品二区免费| 成人私拍视频| 国产午夜一区二区| 日本精品入口免费视频| 国产亚洲成aⅴ人片在线观看| 男女av免费观看| 国产亚洲欧美日韩在线观看一区二区| 日本欧美中文字幕| 搞黄视频免费在线观看| 欧美性生活影院| 毛片视频免费播放| 国产综合久久久久影院| 国产成人生活片| 亚洲一级大片| 欧美亚洲在线视频| 国产毛片在线| 3d动漫精品啪啪1区2区免费| 免费中文字幕在线观看| 不卡影院免费观看| 黄www在线观看| 成人羞羞视频播放网站| 成人黄色av网站| 欧美videos另类精品| 欧美精品一区二区不卡 | 欧美一级视频| 日日夜夜精品网站| 国产亚洲欧美日韩精品一区二区三区| 久久久91精品国产| 丰满人妻一区二区| 色又黄又爽网站www久久| 亚洲一区二区自偷自拍| 韩国v欧美v日本v亚洲v| 国产va亚洲va在线va| 神马久久av| 国产区亚洲区欧美区| 色呦呦呦在线观看| 亚洲欧美日韩成人| 国产精品国产三级国产普通话对白 | 国产精品18久久久久久久久久久久| 欧美狂野激情性xxxx在线观| 亚洲另类春色校园小说| 91久久在线视频| 两个人看的在线视频www| 最新中文字幕亚洲| 后进极品白嫩翘臀在线视频| 在线观看日产精品| 久久久久亚洲av无码专区| 久久久久国产精品麻豆ai换脸| www.色就是色.com| 香蕉av777xxx色综合一区| 波多野结衣三级在线| 日韩成人动漫在线观看| 96sao精品视频在线观看| 在线播放高清视频www| 久久久999国产| 欧美挠脚心网站| 精品国产乱码久久久久久久久| 亚洲午夜在线播放| 亚洲成人一区二区在线观看| www.黄色com| 26uuu精品一区二区三区四区在线| 亚洲欧美偷拍另类| 久久国产一二区| 青青草综合在线| 久久中文亚洲字幕| 欧美日韩一区二区视频在线观看| 香港久久久电影| 国产日韩在线观看av| 不卡福利视频| 96精品视频在线| 欧美亚洲系列| 久久久www成人免费精品| 日本福利片在线| 亚洲第一页自拍| 精品国产av 无码一区二区三区| 91久久久免费一区二区| 日韩aaaaaa| 一区二区三区欧美日韩| 日韩一区二区三区四区视频| 久久久精品国产99久久精品芒果 | 中文字幕乱码人妻二区三区| 欧美日韩免费观看中文| 国产精品99精品无码视| 亚洲精品伦理在线| 日韩影院一区二区| 亚洲欧美中日韩| 国产精品夜夜夜爽阿娇| 欧美国产视频在线| 免费黄在线观看| 久久精品视频网| 在线国产视频一区| 国产亚洲一区二区三区在线观看 | 最新热久久免费视频| 成人做爰69片免网站| 国产欧美一区二区三区网站| 中国毛片在线观看| 久久人人爽爽爽人久久久| 国产精品无码午夜福利| 91在线视频18| 成年人网站免费看| 久久先锋影音av| 精品人伦一区二区| 欧美高清在线视频| 午夜精品久久久久99蜜桃最新版| 中文成人av在线| 国产精品久久久免费看| 日韩理论片在线| 九九热国产精品视频| 亚洲成人综合在线| 九一国产在线观看| 在线欧美小视频| 中文字幕在线观看1| 欧美日韩国产一级二级| 国产偷人妻精品一区二区在线| 日韩亚洲欧美一区二区三区| 超碰在线播放97| 亚洲国产女人aaa毛片在线| 青青草超碰在线| 中文字幕亚洲第一| а√天堂在线官网| 性欧美xxxx交| 欧美日韩亚洲国产| 91在线中文字幕| 免费日韩一区二区三区| 日本不卡一区二区三区在线观看| 成人羞羞动漫| 91.com在线| 久久久久综合| 久久精品视频在线观看免费| 成人高清在线视频| 亚洲日本精品视频| 亚洲欧美激情视频在线观看一区二区三区 | 亚洲午夜电影网| 69成人免费视频| 欧美日韩一二区| 色欲av永久无码精品无码蜜桃 | 欧美精品一级二级三级| www.国产视频| 国产亚洲精品久久久| av网址在线| 日本午夜在线亚洲.国产| 日韩欧美三区| 久久久久资源| 欧美一区二区三区久久精品| 女人喷潮完整视频| 经典一区二区三区| 中国黄色a级片| 亚洲精品综合在线| www.av88| 亚洲成年网站在线观看| 午夜在线小视频| 97**国产露脸精品国产| 国产精品2区| 欧美一二三四五区| 亚洲一本视频| 在线看免费毛片| 国产亚洲一二三区| 日韩av男人天堂| 91精品国产综合久久久久久久久久 | 亚洲欧美激情精品一区二区| 2024最新电影在线免费观看| 日韩av大片免费看| av不卡一区| 青青草综合视频| 美女视频黄免费的久久| 无码人妻精品一区二区三应用大全| 亚洲欧洲制服丝袜| 一级片在线免费播放| 日韩av影院在线观看| 日本动漫理论片在线观看网站| 国产日韩欧美在线| 精品国产乱码久久久久久蜜坠欲下 | 日本一二三区在线观看| 色呦呦网站一区| 色窝窝无码一区二区三区| 欧美成人久久久| 欧美网站免费| 日韩高清三级| 媚黑女一区二区| 国产ts丝袜人妖系列视频| 亚洲综合在线五月| 国产成人麻豆精品午夜在线| 中文字幕在线亚洲| 91p九色成人| 日韩久久不卡| 日日嗨av一区二区三区四区| 青青草视频播放| 午夜激情一区二区三区| 亚洲女同志亚洲女同女播放| 九九热这里只有在线精品视| av在线精品| 老司机午夜免费福利视频| 九一九一国产精品| 自拍偷拍你懂的| 精品视频一区二区不卡| chinese偷拍一区二区三区| 国产成人欧美在线观看| 国产日产精品一区二区三区四区的观看方式 | 日本在线播放一二三区| 精品在线一区| 老司机一区二区三区| 亚洲AV无码片久久精品| 欧美影院一区二区| 在线a人片免费观看视频| 国产深夜精品福利| 91精品天堂福利在线观看| 欧美性受xxxx黒人xyx性爽| 成人免费在线播放视频| 国产色综合视频| 欧美激情在线狂野欧美精品| 国产精品2023| 精品国产成人av在线免| 欧美国产日韩精品免费观看| 中文字幕一区二区三区四区视频 | 亚洲精品aⅴ| 每日在线观看av| 91免费在线播放| 中文字幕第315页| 欧美精品一二区| av成人资源| 久久综合久久色| 亚洲欧美日韩国产一区二区三区| www久久久com| 欧美中文在线观看| 欧美日韩国产一区二区三区不卡| 九九精品久久久| 亚洲v日本v欧美v久久精品| 欧洲天堂在线观看| 成人午夜小视频| 亚洲精品乱码久久久久久蜜桃麻豆| 欧美激情aaa| 久久久久久一区二区三区四区别墅| 国产精品久久久久久久裸模 | 韩国女主播一区二区三区| 99热在线这里只有精品| 中文无字幕一区二区三区| 国产欧美日韩综合精品一区二区三区 | 成人做爰66片免费看网站| 一区二区日韩免费看| 99国产精品免费| 精品区一区二区| 欧美成a人片在线观看久| 看全色黄大色大片| 2021国产精品久久精品| 91亚洲国产成人精品一区| 久久久久久午夜| 第一sis亚洲原创| 久久福利小视频| 欧美精品日韩一本| 午夜影视一区二区三区| 熟女视频一区二区三区| 99久久精品久久久久久清纯| 中文亚洲av片在线观看| 久久久中精品2020中文| 91日韩在线| 国产精品三级在线观看无码| 日韩欧美一区二区免费| 成人亚洲免费|