1. 程式人生 > 其它 >看動畫學演算法之:平衡二叉搜尋樹AVL Tree

看動畫學演算法之:平衡二叉搜尋樹AVL Tree

SpringCloud簡介

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

SpringCloud利用SpringBoot的開發便利性,巧妙的簡化了分散式系統基礎設施的開發(也就是微服務應用的構建),SpringCloud為開發人員提供了快速構建分散式系統的一些工具,包括配置管理,服務發現,斷路器,路由,微代理,事件匯流排,全域性鎖,決策競選,分散式會話等,他們都可以用
SpringBoot的開發風格做到一鍵啟動和部署

SpringBoot並沒有重複造輪子,他只是將目前各大公司開發的比較成熟的,經得起實際考驗的微服務框架組合起來,通過SpringBoot風格進行再封裝,簡化了複雜的配置和實現原理,最終給開發者整理出一套簡單易懂,易部署、易維護的分散式系統開發工具包

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

SpringCloud和SpringBoot的關係

  1. SpringBoot專注於快速的開發單個微服務應用,以最終以jar的形式體系
  2. SpringCloud是關注全域性微服務間協調和治理的框架,他將SpringBoot開發的單個微服務應用整合起來進行管理,為各個服務之間提供:配置管理,服務發現,斷路器,路由,微代理,事件匯流排,全域性鎖,決策競選,分散式會話等整合服務
  3. SpringBoot可以獨立存在,而SpringCloud依賴SpringBoot而存在
    總結:SpringBoot是一個專注於快速開發單個服務應用的框架,SpringCloud關注全域性的微服務應用的管理。

現今網站的基本構建

SpringCloud與Dubbo對比

  1. 區別:
    1. SpringCloud採用的是基於HTTP的REST風格的通訊方式
    2. Dubbo採用的是RPC通訊方式,Dubbo是一個專注於高新能的RPC框架
  2. 元件層面:
    1. SpringCloud的功能比Dubbo更加強大,其能夠與SpringFramework、SpringBoot、SpringData、SpringBatch等其他Spring專案進行完美融合,這些功能對於微服務來說是至關重要的
    2. Dubbo可組合自由度更高,缺失很多元件需要自己進行選取組裝
  3. 公司層面:
    1. SpringCloud有一套完整的解決方案,拿來即用(且SpringCloud社群活躍度極高,能夠緊隨時代的發展)
    2. Dubboo需要強大的技術能力修改Dubbo的原始碼,並且組合出一套完整的分散式問題解決方案,需要強大的力量,得不償失(2017年重啟更新)

SpringCloud的版本