適合新手的spring cloud入門教程
就和 springboot 是 web 應用的腳手架一樣, springcloud 是分散式和叢集應用的腳手架。
但是並不是所有的同學都有接觸過分散式和叢集,所以為了讓學習曲線變得緩和,站長按照如下順序展開 springcloud 教程的講解:
- 先來個單體架構的應用,裡面既沒有分散式,也沒有叢集。

- 基於這個單體架構,分析其弊端,引入微服務,叢集和分散式的概念。

- 一般說來做一個springcloud專案都會有多個子專案,這裡就涉及到使用 maven 建立父子(聚合)專案的概念。很多同學之前也沒有接觸過這個,為了讓後面學習更順滑,也在這裡做了 maven 父子專案教程,分別提供了 eclipse 版本 和 idea 版本。

- springcloud 是由一個一個的微服務組成, 而這些微服務都是在註冊中心管理起來的。所以這裡我們就會做註冊中心的開發。

- 有了註冊中心,我們就可以釋出真正提供服務的微服務了。

- springcloud 裡面的一個核心內容是微服務之間的彼此呼叫,所以我們會先演示 ribbon 方式的檢視微服務呼叫資料微服務。

7. 然後再學習主流的 Feign 方式

- 微服務之間的呼叫關係是需要被掌握的,於是我們學習服務鏈路追蹤

- 叢集裡有多個例項,當發生改變的時候,必須重新部署,這樣維護成本比較高。為了降低維護成本,我們引入了分散式配置服務的概念。

- 被呼叫的服務不一定100% 可用,當發生不可用的時候怎麼辦呢?我們會使用斷路器。

- 斷路器什麼時候起作用了?微服務的可用度如何?這些都應該被納入監控,所以我們會學習對單個微服務的短路監控以及叢集裡多個微服務的聚合監控。

- 微服務有很多個,分別處於不同的ip地址,使用不同的埠。這讓訪問者難以記憶,為了方便訪問,我們引入了閘道器,這樣訪問者似乎就意識不到微服務的存在了一般。

- 在這個系列教材裡,微服務有很多個,埠也有很多個,擔心學員被埠號搞混淆了,於是把這些埠號都做了整理,方便梳理思路。