SpringCloud Zuul基本使用方法匯總
SpringCloud Zuul 是SpringCloud系列的網(wǎng)關實現(xiàn),具有均衡負載,將非業(yè)務性校驗剝離出來,使微服務專注于業(yè)務的一個組件
使用Zuul網(wǎng)關后,所有的請求都通過網(wǎng)絡進行轉發(fā),所以所有的請求都隱藏了自己的主機及端口信息,而是統(tǒng)一使用Zuul網(wǎng)關的主機及端口號作為請求入口,Zuul網(wǎng)關在收到請求后,會根據(jù)serviceId自動發(fā)現(xiàn)目標微服務地址,然后將請求轉發(fā)到目標微服務上進行處理.
Zuul仍然是開箱即用工具系列,因此仍然適用4部曲套路:
1. 引入依賴: spring-cloud-starter-zuul
2. 添加支持: 在啟動類上添加@EnableZuulProxy
3. 具體使用: zuul會自動從注冊中心上發(fā)現(xiàn)微服務,并創(chuàng)建網(wǎng)關代理
4. 按需配置: 如果集成了Eureka,則Zuul會自動從注冊中心獲取所有應用,自動根據(jù)serviceId建立轉發(fā)規(guī)則,如果沒有集成注冊中心,則需要配置一下:
4.1 指定轉發(fā)的匹配規(guī)則: zuul.routes.serviceId-1.path=/serviceId-1/** 表示路徑中匹配了serviceId-1/的請求
4.2 指定轉發(fā)的目標URL: zuul.routes.serviceId-1.url=http://域名:端口/ 表示將匹配了serviceId-1的請求轉發(fā)到http://域名:端口/處處理
4.3 匹配規(guī)則和url是成對的,它們的主鍵都是serviceId-1,而serviceId-1是每個微服務的服務ID或可以辨識這個微服務的標識符
如果微服務有集群,此時需要對上述配置對稍作調(diào)整,需要指定某個serviceId下的集群實例列表
4.1 指定轉發(fā)的匹配規(guī)則: zuul.routes.serviceId-1.path=/serviceId-1/**
4.2 指定轉發(fā)的目標此時不是直接用url了,而是要指定serviceId,因為serviceId可以對應多個url集群: zuul.routes.serviceId-1.service-id=serviceId-1
4.3 指定serviceId-1對應的集群實例的url列表: serviceId-1.ribbon.listOfServers=http://域名1:端口1/,http://域名2:端口2/,.......有多少集群實例,就寫多少對應的url(很顯然這種手動方式不符合主流需要)
注意點:
1. 網(wǎng)關對不同微服務的轉發(fā)是以serviceId作為區(qū)分標志的,因此每個匹配規(guī)則配置對,都是以serviceId作為主鍵的.有多少微服務,就需要配置多少對這樣的配置對
2. serviceId是小寫的,因此請求路徑上必須使用小寫.默認情況下,serviceId是spring.application.name的全小寫,因此如果想以應用名作為path名稱的話,需要用其小寫.
2. 如果集成了eureka,則zuul會自動發(fā)現(xiàn)服務并自動為每個微服務建立轉發(fā)規(guī)則.就不需要手動配置那么多得配置對了.
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
在springboot3微項目中如何用idea批量創(chuàng)建單元測試邏輯
這篇文章主要介紹了在SpringBoot3項目中使用IntelliJIDEA批量創(chuàng)建單元測試包括準備工作(確保項目配置正確,添加測試依賴),使用IntelliJIDEA創(chuàng)建測試,感興趣的朋友一起看看吧2024-10-10Springboot接口返回參數(shù)及入?yún)SA加密解密的過程詳解
這篇文章主要介紹了Springboot接口返回參數(shù)及入?yún)SA加密解密,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-07-07詳解Java中用于查找對象哈希碼值的hashCode()函數(shù)
Java中入HashMap等一些鍵值對應的結構,基本上都可以用hashCode()來查找值,接下來我們就來詳解Java中用于查找對象哈希碼值的hashCode()函數(shù):2016-05-05mybatisplus的連表增強插件mybatis plus join
本文主要介紹了mybatisplus的連表增強插件mybatis plus join,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-06-06