javascript
《Spring Cloud微服务架构开发实战》_董超笔记
服務(wù)治理
一、服務(wù)治理說明
1、方便微服務(wù)實例的上線與下線,實現(xiàn)服務(wù)快速進行水平擴展。
2、為微服務(wù)架構(gòu)提升應(yīng)用彈性,當(dāng)其中一個應(yīng)用的一個服務(wù)提供者實例不可用或者出現(xiàn)問題時,服務(wù)治理可及時發(fā)現(xiàn)問題,在調(diào)度消費者時可以繞開有問題的實例,將應(yīng)用的影響降低到最低。
二、服務(wù)治理優(yōu)點
1、可用性:支持動態(tài)的服務(wù)實例集群環(huán)境,任何服務(wù)實例可隨時上線與下線。服務(wù)消費者只需知道服務(wù)名稱即可調(diào)用相應(yīng)服務(wù),而無需知道服務(wù)提供者的物理地址.
2、負(fù)載均衡:可提供動態(tài)的負(fù)載均衡功能,并將所有的請求動態(tài)地分布到所管理的所有服務(wù)實例中進行處理。
3、應(yīng)用彈性:服務(wù)治理的客戶端會定時從服務(wù)治理服務(wù)器中復(fù)制一份服務(wù)實例信息緩存到本地中,這樣即使當(dāng)服務(wù)治理服務(wù)器不可用時,服務(wù)消費者也可使用本地的緩存區(qū)訪問相應(yīng)的服務(wù),而不至于中斷服務(wù)。
4、高可用性集群:可構(gòu)建服務(wù)治理集群,通過互相注冊機制,將每個治理服務(wù)所管轄的服務(wù)信息列表進行交換,是服務(wù)治理服務(wù)用友更高的可用性。
客戶端負(fù)載均衡--Ribbon
1、修改服務(wù)消費方,增加依賴:
<dependency>
??????????? <groupId>org.springframework.cloud</groupId>
??????????? <artifactId>spring-cloud-starter-ribbon</artifactId>
??????? </dependency>
2、訪問服務(wù)的入口類增加如下配置:
//增加@LoadBalanced,使得restTemplate具有負(fù)載均衡功能
??? @LoadBalanced
3、實現(xiàn)原理步驟:
(1)Ribbon首先根據(jù)其所在Zone優(yōu)先選擇一個負(fù)載較小的Eureka服務(wù)器;
(2)定期從Eureka服務(wù)器更新,并過濾服務(wù)實例列表;
(3)根據(jù)指定的負(fù)載均衡策略,從可用的服務(wù)實例列表中選擇一個;
(4)然后使用改地址,通過rest客戶端進行服務(wù)調(diào)用。
Feign
15:02
Feign是一個聲明式的Web Service客戶端,它的目的就是讓W(xué)eb Service調(diào)用更加簡單。Feign提供了http請求模板,通過編寫簡單的接口并插入注解,就可以完成HTTP請求的參數(shù)、格式、地址、等信息的聲明。通過feign代理請求,我們只需要像調(diào)用方法一樣調(diào)用它就可以完成微服務(wù)請求及相關(guān)處理。
?
?
總結(jié)
以上是生活随笔為你收集整理的《Spring Cloud微服务架构开发实战》_董超笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Mycat安装与配置
- 下一篇: Linux gitlab完全卸载