SpringCloud概述

⒈官網說明架構

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

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

  SpringBoot並無重複製造輪子,它只是將目前各家公司開發的比較成熟,經得起實際考驗的服務框架組合起來,經過SpringBoot風格進行再封裝,屏蔽掉了複雜的配置和實現原理,最終給開發者留出了一套簡單易懂、易部署和易維護的分佈式系統開發工具。分佈式

⒉一句話總結微服務

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

⒊SpringCloud和SpringBoot是什麼關係?性能

  SpringBoot專一於快速方便的開發單個個體微服務。開發工具

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

  SpringBoot能夠離開SpringCloud獨立使用開發項目,可是SpringCloud離不開SpringBoot,它們之間屬於單向依賴的關係。事件

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

⒊SpringCloud和Dubbo對比

功能點 SpringCloud Dubbo
服務註冊中心 SpringCloud Netflix Eureka Zookeeper、Redis等
服務調用方式 Rest Api RPC
服務監控 SpringBoot Admin Dubbo-monitor
斷路器 SpringCloud Netflix Hystrix 不完善
服務網關 SpringCloud Netflix Zuul
分佈式配置 SpringCloud Config
服務跟蹤 SpringCloud Sleuth
消息總線 SpringCloud Bus
數據流 SpringCloud Stream
批量任務 SpringCloud Task
.......    

  總結:

  SpringCloud拋棄了Dubbo的RPC通訊,採用基於Http的Rest方式,嚴格來講,這兩種方式各有優點,Rest犧牲了服務調用的性能,但也避免了原生RPC帶來的問題,並且Rest比RPC更爲靈活,服務提供方和調用方的依賴只須要一級契約,不存在代碼級別的強依賴。

  SpringCloud功能比Dubbo更增強大,涵蓋面更廣,能夠與Spring全家桶完美融合,Dubbo選擇度很高,但兼容及穩定性須要更多的配置。

相關文章
相關標籤/搜索