8步代碼詳解SpringCloud框架下集成具備多策略調度提供者的框架

提示:目前整理的springcloud的實戰代碼,可通過以下方式獲得下載方式:

關注頭條號“互聯網IT信息”——>私信發送 “集成負載” ,即可獲取代碼下載的方式。

同時為了感謝大家一直以來的支持,私信後也可以獲取如下架構資料:

人工智能、高端架構、大數據、雲計算、分佈式、微服務

1. 此篇文章簡介

在SpringCloud框架下,通過集成微服務註冊中心Eureka,將服務提供者都註冊到中心。但是,作為消費者如果需要調用提供者的服務,並且能夠更具一定的負載均衡的策略來調用,那麼就需要集成一個消費者的框架來處理,此篇文章就是著重講解其中一種消費者框架Ribbon。

2. SpringCloud集成Ribbon調用提供者的核心步驟簡介

(1)創建註冊中心的基礎工程

(2)創建註冊中心的啟動類

(3)配置註冊中心

(4)創建兩個服務提供者步驟如下:

(4-1)創建服務提供者的基礎工程

(4-2)配置服務提供者

(4-3)創建提供者的rest服務

(4-4)創建服務提供者的啟動類

(5)創建基於Ribbon的消費者的基礎工程

(6)配置消費者

(7)創建消費者中調用提供者的rest服務

(8)創建消費者的啟動類

3. 以上8步的詳細解釋:

(1)創建註冊中心的基礎工程

1)基於maven創建基礎工程,命名為:springcloudeurekaserver

2)配置pom.xml

8步代碼詳解SpringCloud框架下集成具備多策略調度提供者的框架

(2)創建註冊中心的啟動類

該啟動類是作為微服務的註冊中心來創建的,具體的代碼如下:

8步代碼詳解SpringCloud框架下集成具備多策略調度提供者的框架

(3)配置註冊中心

在application.yml配置文件中配置註冊中心的相關屬性,具體如下:

8步代碼詳解SpringCloud框架下集成具備多策略調度提供者的框架

核心參數解釋如下:

1)該工程雖然是作為註冊中心來啟動的,但是如果不進行配置約束,它自身會作為客戶端將自己註冊到註冊中心中,這其實是沒必要的,控制的方法是,將如下兩個參數配置為false:

registerWithEureka: false

fetchRegistry: false

(4)創建兩個服務提供者步驟如下:

(4-1)創建服務提供者的基礎工程

1)基於maven創建服務提供者的基礎工程,兩個工程分別命名為:

springcloudeurekaprovider springcloudeurekaprovider2

2)配置pom.xml,核心配置如下:

8步代碼詳解SpringCloud框架下集成具備多策略調度提供者的框架

(4-2)配置服務提供者

在application.yml文件中配置服務提供者的相關參數:

工程springcloudeurekaprovider的配置參數:

8步代碼詳解SpringCloud框架下集成具備多策略調度提供者的框架

工程springcloudeurekaprovider2的配置參數:

將其中的port改為8124即可

(4-3)配置服務提供者

創建一個簡單的rest服務,供測試使用

工程springcloudeurekaprovider的控制器類:

8步代碼詳解SpringCloud框架下集成具備多策略調度提供者的框架

工程springcloudeurekaprovider2的控制器類:

基本和以上代碼一直,就是將代碼裡邊的ereka provider 1 改為ereka provider 2即可

(4-4)創建服務提供者的啟動類

此啟動類就是將該工程的提供的微服務註冊到註冊中心,供客戶端調用。

8步代碼詳解SpringCloud框架下集成具備多策略調度提供者的框架

(5)創建基於Ribbon的消費者的基礎工程

1)基於maven創建基礎工程,命名為:springcloudribbonconsumer

2)配置pom.xml

8步代碼詳解SpringCloud框架下集成具備多策略調度提供者的框架

(6)配置消費者

在application.yml文件中配置如下:

8步代碼詳解SpringCloud框架下集成具備多策略調度提供者的框架

(7)創建消費者中調用提供者的rest服務

8步代碼詳解SpringCloud框架下集成具備多策略調度提供者的框架

(8)創建消費者的啟動類

8步代碼詳解SpringCloud框架下集成具備多策略調度提供者的框架

再次提醒:目前整理的springcloud的實戰代碼,可通過以下方式獲得下載方式:

關注頭條號“互聯網IT信息”——>私信發送 “集成負載” ,即可獲取代碼下載的方式。

同時為了感謝大家一直以來的支持,私信後也可以獲取如下架構資料:

人工智能、高端架構、大數據、雲計算、分佈式、微服務


分享到:


相關文章: