更新時間:2023-04-10 來源:黑馬程序員 瀏覽量:
SpringCloud是一系列框架的有序集合,為開發(fā)人員構(gòu)建微服務(wù)架構(gòu)提供了完整的解決方案。Spring Cloud根據(jù)分布式服務(wù)協(xié)調(diào)治理的需求成立了許多子項(xiàng)目,每個項(xiàng)目通過特定的組件去實(shí)現(xiàn),下面我們講解一下Spring Cloud 包含的常用組件以及模塊。
(1)Spring Cloud Config:分布式配置中心,負(fù)責(zé)把配置放到遠(yuǎn)程服務(wù)器上,集中化管理集群配置。目前支持本地存儲、Git和Subversion。
(2)Spring Cloud Netflix:核心組件,負(fù)責(zé)對多個Netflix OSS開源套件進(jìn)行整合。
·Eureka:服務(wù)注冊發(fā)現(xiàn)中心,基于REST服務(wù)的分布式中間件,主要用于服務(wù)管理。
·Hysrrix:熔斷器,容錯管理工具,旨在通過熔斷機(jī)制控制服務(wù)和第三方庫的節(jié)點(diǎn),從而對延遲和故障提供更強(qiáng)大的容錯能力。
·Ribbon:云端負(fù)載均衡器。支持多種負(fù)載均衡策略,可配合服務(wù)發(fā)現(xiàn)和熔斷器使用,在客戶端實(shí)現(xiàn)負(fù)載均衡。
·Feign:一個REST客戶端,基于Ribbon和Hystrix的聲明式服務(wù)調(diào)用組件。Zuul:服務(wù)網(wǎng)關(guān),為微服務(wù)架構(gòu)集群提供代理、過濾、路由等功能。
(3)SpringCloud Bus:事件、消息總線,用于在集群(例如配置變化事件)中傳播狀態(tài)變化,可與SpringCloud Config聯(lián)合實(shí)現(xiàn)熱部署。
(4)Spring Cloud Stream:數(shù)據(jù)流操作開發(fā)包,可與Redis、RabbitMQ、Kafka等架構(gòu)進(jìn)行消息發(fā)送與接收。
(5)Spring Cloud Sleuth:服務(wù)追蹤框架,可以與Zipkin、Apache Htrace 和ELK等數(shù)據(jù)分析、服務(wù)跟蹤系統(tǒng)進(jìn)行整合,為跟蹤服務(wù)、解決問題提供了便利。
下面我們來看一個基于Spring Cloud 的微服務(wù)架構(gòu),如圖所示。