Spring Cloud體系介紹

2022-09-16 18:27:18 字數 1482 閱讀 5653

上圖只是spring cloud體系的一部分,spring cloud共整合了19個子專案,裡面都包含乙個或者多個第三方的元件或者框架!

spring cloud 工具框架

1、spring cloud config 配置中心,利用git集中管理程式的配置。 

當然這個數量還在一直增加...

微服務是一種架構的理念,提出了微服務的設計原則,從理論為具體的技術落地提供了指導思想。spring boot是一套快速配置腳手架,可以基於spring boot快速開發單個微服務;spring cloud是乙個基於spring boot實現的服務治理工具包;spring boot專注於快速、方便整合的單個微服務個體,spring cloud關注全域性的服務治理框架。

spring boot/cloud是微服務實踐的最佳落地方案。

2023年初的時候,因為公司業務的大量發展,我們開始對原有的業務進行拆分,新上的業務線也全部使用獨立的專案來開發,專案和專案之間通過http介面進行訪問。15年的業務發展非常迅速,專案數量也就相應急劇擴大,到了15底的時候專案達60多個,當專案數達到30幾個的時候,其實我們就遇到了問題,經常某個專案因為擴充套件增加了新的ip位址,我們就需要被動的更新好幾個相關的專案。服務越來越多,服務之間的呼叫關係也越來越複雜,有時候想畫一張圖來表示專案和專案之間的依賴關係,線條密密麻麻無法看清。網上有一張圖可以表達我們的心情。

這個時候我們就想找一種方案,可以將我們這麼多分布式的服務給管理起來,到網上進行了技術調研。我們發現有兩款開源軟體比較適合我們,乙個是dubbo,乙個是spring cloud。

其實剛開始我們是走了一些彎路的。這兩款框架我們當時都不熟悉,當時國內使用spring cloud進行開發的企業非常的少,我在網上也幾乎沒找到太多應用的案例。但是dubbo當時在國內的使用還是挺普遍的,相關的資料各方面都比較完善。因此在公司擴充套件新業務線眾籌平台的時候,技術選型就先定了dubbo,因為也是全新的業務沒有什麼負擔,這個專案我們大概開發了六個月投產,上線之初也遇到了一些問題,但最終還比較順利。

在新業務線選型使用dubbo的同時,我們也沒有完全放棄spring cloud,我們抽出了一兩名開發人員學習spring boot我也參與其中,為了驗證spring boot是否可以到達實戰的標準,我們在業餘的時間使用spring boot開發了一款開源軟體雲收藏,經過這個專案的實戰驗證我們對spring boot就有了信心。最重要的是大家體會到使用spring boot的各種便利之後,就再也不想使用傳統的方式來進行開發了。

但是還有乙個問題,在選擇了spring boot進行新業務開發的同時,並沒有解決我們上面的那個問題,服務於服務直接呼叫仍然比較複雜和傳統,這時候我們就開始研究spring cloud。因為大家在前期對spring boot有了足夠的了解,因此學習sprig cloud就顯得順風順水了。所以在使用dubbo半年之後,我們又全面開始擁抱spring cloud。

Springcloud技術體系

學習springcloud之前我們需要知道某樣技術的體系是什麼,從上而下學習這門技術,這樣才能更好地掌握。首先講一下springcloud和dubbo的區別 springcloud是管理應用,dubbo是管理服務的。1.1 基礎框架 springboot main函式啟動的原理。2.1 分布式配置 ...

Springcloud元件介紹

springcloud是基於springboot基礎之上開發的微服務框架,springcloud是一套目前非常完整的微服務解決方案框架,其內容包含服務治理 註冊中心 配置管理 斷路器 智慧型路由 微 控制匯流排 全域性鎖 分布式會話等。springcloud包含眾多的子專案 eureka 服務治理 ...

springCloud元件介紹

1.eureka 負責服務的註冊與發現 主要分為eurekaserver 服務端 和eurekaclient 客戶端 工作原理 在啟動應用之後,eureka客戶端會向服務端註冊自己的服務,同時服務端的資訊會快取到本地,客戶端會向服務端週期性的心跳互動更新服務資訊。2.ribbon主要做負載均衡的作用...