簡單聊聊Spring Cloud

1、Spring Cloud是什麼?

SpringCloud,基於SpringBoot提供了一套微服務解決方案,包括服務註冊與發現,配置中心,全鏈路監控,服務網關,負載均衡,熔斷器等組件,除了基於NetFlix的開源組件做高度抽象封裝之外,還有一些選型中立的開源組件。

SpringCloud利用SpringBoot的開發便利性巧妙地簡化了分佈式系統基礎設施的開發,SpringCloud爲開發人員提供了快速構建分佈式系統的一些工具,包括配置管理、服務發現、斷路器、路由、微代理、事件總線、全局鎖、決策競選、分佈式會話等等,它們都可以用SpringBoot的開發風格做到一鍵啓動和部署。

SpringCloud=分佈式微服務架構下的一站式解決方案,是各個微服務架構落地技術的集合體,俗稱微服務全家桶。


2、Spring Cloud和Spring Boot是什麼關係 ?

SpringCloud是關注全局的微服務協調整理治理框架,它將SpringBoot開發的一個個單體微服務整合並管理起來,爲各個微服務之間提供,配置管理、服務發現、斷路器、路由、微代理、事件總線、全局鎖、決策競選、分佈式會話等等集成服務。

SpringBoot可以離開SpringCloud獨立使用開發項目,但是SpringCloud離不開SpringBoot,屬於依賴的關係。

SpringBoot專注於快速、方便的開發單個微服務個體,SpringCloud關注全局的服務治理框架。


3、Spring Cloud 和 Dubbo有什麼差別?

在這裏插入圖片描述
兩者之間最大的區別:SpringCloud拋棄了Dubbo的RPC通信,採用的是基於HTTP的REST方式。

嚴格來說,這兩種方式各有優劣。雖然從一定程度上來說,後者犧牲了服務調用的性能,但也避免了上面提到的原生RPC帶來的問題。而且REST相比RPC更爲靈活,服務提供方和調用方的依賴只依靠一紙契約,不存在代碼級別的強依賴,這在強調快速演化的微服務環境下,顯得更加合適。

很明顯,Spring Cloud的功能比Dubbo更加強大,涵蓋面更廣,而且作爲Spring的拳頭項目,它也能夠與Spring Framework、Spring Boot、Spring Data、Spring Batch等其他Spring項目完美融合,這些對於微服務而言是至關重要的。使用Dubbo構建的微服務架構就像組裝電腦,各環節我們的選擇自由度很高,但是最終結果很有可能因爲一條內存質量不行就點不亮了,總是讓人不怎麼放心,但是如果你是一名高手,那這些都不是問題;而Spring Cloud就像品牌機,在Spring Source的整合下,做了大量的兼容性測試,保證了機器擁有更高的穩定性,但是如果要在使用非原裝組件外的東西,就需要對其基礎有足夠的瞭解。


4、Spring Cloud能幹些什麼?

  1. Distributed/versioned configuration(分佈式/版本控制配置)
  2. Service registration and discovery(服務註冊與發現)
  3. Routing(路由)
  4. Service-to-service calls(服務到服務的調用)
  5. Load balancing(負載均衡配置)
  6. Circuit Breakers(斷路器)
  7. Distributed messaging(分佈式消息管理)

5、Spring Cloud技術棧有哪些?

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章