Spring Cloud 簡介

Spring Cloud 簡介
思惟導圖以下
安全

總說

這裏將會首先簡單介紹一下Spring Cloud 。
其Logo 以下
架構

Spring Cloud 是一系列有序框架的集合,其主要的設施有,服務發現與註冊,配置中心,消息總線,負載均衡,斷路器,數據監控等,經過Spring Boot的方式,能夠實現一鍵啓動,和部署。
Spring 沒有從新造車輪,只是把各家的應用給綜合起來。最後給開發者遺留下了一個足夠簡單的,至關容易部署的,至關容易學習的Spring 體系。
至於爲何要學習Spring Cloud的體系,由於原先的體系過於複雜了,致使開發的環境艱難,正是因爲開發的環境的艱難,Spring Cloud 的是Spring體系的簡化版,簡化了原有的複雜,使得開發變的更加的簡單快速。
其核心以下:
Spring Cloud Config、Spring Cloud Netflix(Eureka、Hystrix、Zuul、Archaius…)、Spring Cloud Bus、Spring Cloud for Cloud Foundry、Spring Cloud Cluster、Spring Cloud Consul、Spring Cloud Security、Spring Cloud Sleuth、Spring Cloud Data Flow、Spring Cloud Stream、Spring Cloud Task、Spring Cloud Zookeeper、Spring Cloud Connectors、Spring Cloud Starters、Spring Cloud CLI
這裏將會一一的介紹。負載均衡

服務註冊與發現

其英文名稱爲 Spring Cloud Eureka,爲Spring Cloud Netflix 子項目的核心組件之一,主要用於微服務的服務治理與發現。
在微服務的架構中,每每都有一個註冊中心,每一個微服務都會向註冊中心,註冊本身的微服務,註冊中心,維護着,服務名稱與服務實例對應的關係,每一個微服務都會定時的從註冊中心,獲取註冊列表,同時彙報本身的運行狀況,這樣當有其餘服務須要調用該服務的時候,就能夠向本身獲取到的列表中,獲取地址進行調用,Eureka實現了這套機制。即服務註冊與發現。
框架

其爲微服務架構體系中最爲核心的一點,用於其餘微服務註冊到該註冊中心,配合路由能夠實現路由的轉發。經過尋找,遍歷出其微服務。
同類型產品的還有Apahe Zookeeper 相對於高可用來講,zk 將不會保證,服務的可用性,當節點掛掉之後,須要進行Leader 選舉,選舉的時候會出現短暫的掛掉。而 eureka 當一個節點宕機之後,會進行自動的轉移。因此其高可用性比zookeeper 相比更高。分佈式

配置中心

伴隨着配置的增加,服務也有不少個配置,每一個配置文件都各個不相同,其中,許多配置文件都是能夠共用的,若是每一個服務都去管理這些配置,會帶來極大的麻煩,這個時候,須要引入基於Git的配置中心,去配置這個服務,例如Spring Cloud 體系中的,Spring Cloud Config,可是服務之間如何通訊,這裏使用 Spring Cloud Bus,即消息總線,做爲配置中心,通知到配置體系中。
微服務

服務消費者

這裏是至關經典的生產者,消費者模型,經過生產者,和消費者,統一進行佈置,經過Spring Cloud Feign 遠程調用,實現服務消費者,和生產者之間的相關聯。實現經典的服務消費者和生產者之間的關係。
工具

服務容錯

當調用服務出錯之後,服務如何保證整個體系不崩塌,這裏就須要使用服務容錯進行處理。這裏稱爲服務雪崩,當出現服務雪崩的時候,整個服務鏈路會出現調用崩塌的狀況。
Spring Cloud 組件中的 Spring Cloud HyStrix 實現了這種服務降級,與故障隔離。
學習

網關

網關爲整個系統,提供路由,鑑權,監控,負載均衡等功能,Spring Cloud 爲此提供的解決方案有Zuul,與Gateway。
測試

服務追蹤

伴隨着整個服務鏈路的增加,服務愈來愈多,排查問題,監控指標的時候,服務追蹤變的至關的重要,Spring Cloud 體系提供的是,Sleuth,對整個服務鏈路進行追蹤,並以圖表的形式表現出來。
spa

服務測試

在微服務體系中,一個服務可能會依賴其餘的服務,這裏使用服務測試來使用。經過Mock數據,實現服務的測試。
這裏使用的是 Spring Cloud Contract

更多工具

Spring Cloud Security

Spring Cloud Security 的安全工具包,用於對Spring Security 提供基本的RBAC服務。

Spring Cloud Sleuth

用於進行相關的日誌收集,實現分佈式追蹤的一種解決方案。

Spring Cloud Data Flow

用於進行大規模的數據處理。

Spring Cloud Stream

事件觸發的機制,讓其實現事件觸發。

Spring Cloud Task

調度工做,定時任務,須要使用 Task

Spring Cloud Zookeeper

同屬於 註冊中心 Zookeeper 體系。

Spring Cloud Connectors

利用 Spring Cloud Connectors 實現雲平臺的搭建。

Spring Cloud Starters

開箱即用,能夠實現Boot形式的啓動項目。

Spring Cloud CLI

同上,使用命令行的方式實現開箱即用。

相關文章
相關標籤/搜索