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