成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

Zuul配置springcloud

概述:zuul底層是基于servlet,是由一系列的filter鏈構(gòu)成。

1、路由配置?

a、單例serverId映射

創(chuàng)新互聯(lián)公司長期為上1000家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為蓬溪企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計、成都做網(wǎng)站、外貿(mào)網(wǎng)站建設(shè),蓬溪網(wǎng)站改版等技術(shù)服務(wù)。擁有十余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

zuul:
??routes:
????client-a:
??????path:?/client/**
??????serviceId:?client-a

意思是,以/client/**為端點路徑的服務(wù)都映射到client-a,這種配置還可以簡寫成下面的格式,二者效果完全一致:

官網(wǎng)?www.1b23.com
zuul:
??routes:
????client-a:?/client/**

還有一種更粗暴的方式,就是映射的serverId都不用寫,如下:

zuul:
??routes:
????client-a:

這種配置,zuul會為client-a添加一個默認的映射規(guī)則,即:/client/**,相當(dāng)于上面的第一種配置方式。

b、單例URL映射

這種配置意思就是,網(wǎng)關(guān)路由到具體的服務(wù)地址,即:將serverId替換成url,如下:

zuul:
??routes:
????client-a:
??????path:?/client/**
??????url:?http://localhost:7070?#client-a的地址

c、多實例路由

默認情況下zuul會使用eureka中集成的負載均衡功能,如果要使用ribbon的負載均衡,就需要指定serverId,這個操作一定要禁用掉ribbon使用eureka,具體操作如下:

zuul: ?routes: ? ?ribbon-route: ? ? ?path: /ribbon/** ? ? ?serviceId: ribbon-routeribbon: ?eureka: ? ?enabled: false?#禁止Ribbon使用Eurekaribbon-route:?ribbon: ? ?NIWSServerListClassName: com.netflix.loadbalancer.ConfigurationBasedServerList #定義獲取服務(wù)列表方法 ? ?NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule ? ? #Ribbon LB Strategy 使用隨機負載策略 ? ?listOfServers: localhost:7070,localhost:7071 ? ? #client services for Ribbon LB 指定服務(wù)地址

d、forword本地跳轉(zhuǎn)

假如在網(wǎng)關(guān)服務(wù)中,需要做一些邏輯處理,可以在配置url時,添加forword選項:

zuul:
??routes:
????client-a:
??????path:?/client/**
??????url:?forward:/client?#跳轉(zhuǎn)到網(wǎng)關(guān)服務(wù)中@GetMapping("/client")端點

e、相同路徑加載

zuul: ?routes: ? client-b: ? ? path: /client/** ? ? ?serviceId: client-b ? ?client-a: ? ? ?path: /client/** ? ? ?serviceId: client-a

從上面的配置文件,可以看出,配置了兩個工程的路由,即:client-a工程,client-b工程,但是二者的path路徑是一致的,這種情況下,在加載訪問的時候,后者會覆蓋前者。

f、路由通配符

規(guī)則說明示例
/**匹配任意數(shù)量的路徑與字符/client/add, /client/update, client/a, client/add/a, client/update/a/b
/*匹配任意數(shù)的字符/client/add, /client/update, client/a
/?匹配單個字符/client/a

2、功能配置

a、屏蔽服務(wù)、屏蔽路徑

zuul:??ignored-services:?client-b????#忽略的服務(wù),防止服務(wù)侵入??ignored-patterns:?/**/div/**??#忽略的接口,屏蔽接口
??routes:
????client-a:?/client/**

加上?ignored-services 與?ignored-patterns?之后,zuul在拉取服務(wù)列表的時候,創(chuàng)建映射規(guī)則的時候,就會忽略掉client-b服務(wù)和/**/div/**接口。

b、過濾掉敏感請求頭

正常我們使用HTTP請求服務(wù),在header添加值進行傳遞,是很正常的一件事,協(xié)議的一些基本認證也都在header,比如cookie,或者把登錄認證通過后的用戶信息base64編碼后,放在authorization里面,在系統(tǒng)內(nèi)這種傳遞是沒有問題的,但是如果系統(tǒng)與外部進行交互,這種可能就會出現(xiàn)異常,畢竟也要防患于未然,這時可以在zuul里邊指定敏感頭信息,切斷它與下游的交互,如下:

zuul: ?routes: ? ?client-a: ? ? ?path: /client/** ? ? ?sensitiveHeaders: Cookie,Set-Cookie,Authorization? ? ?serviceId: client-a

c、重定向

在實際企業(yè)級項目中,很多操作都是需要用戶登錄后,才可以進行操作的,為了防止用戶登錄成功后,在重定向的時候,將對應(yīng)的服務(wù)地址暴露給用戶,可以設(shè)置一個頭,如下:

zuul:
??add-host-header:?true?????????#重定向header問題
??routes:
????client-a:?/client/**

d、重試機制

在生產(chǎn)環(huán)境中,可能由于各種原因,導(dǎo)致偶然請求失敗,可以使用zuul結(jié)合ribbon做重試操作,如下:

zuul: ?retryable: true #開啟重試 ribbon: ?MaxAutoRetries: 1 #同一個服務(wù)重試的次數(shù)(除去首次) ?MaxAutoRetriesNextServer: 1 ?#切換相同服務(wù)數(shù)量

但是,這個功能要慎用,因為有些接口需要保證冪等性。

新聞名稱:Zuul配置springcloud
網(wǎng)站路徑:http://jinyejixie.com/article16/gdjgdg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、App開發(fā)、移動網(wǎng)站建設(shè)、企業(yè)網(wǎng)站制作、品牌網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名
太白县| 浦东新区| 水富县| 旬邑县| 曲靖市| 西昌市| 高州市| 池州市| 木兰县| 双江| 沁阳市| 资兴市| 东乌珠穆沁旗| 安仁县| 衡阳市| 涿鹿县| 高要市| 石柱| 新蔡县| 东乌珠穆沁旗| 米脂县| 涟水县| 陆川县| 都兰县| 桐庐县| 紫金县| 瑞丽市| 伊宁县| 定襄县| 浙江省| 汉寿县| 博白县| 宜宾县| 织金县| 常宁市| 新田县| 鄂州市| 无棣县| 兖州市| 民县| 密云县|