1. 程式人生 > >SpringCloud極簡入門 (一) 微服務架構

SpringCloud極簡入門 (一) 微服務架構

作者:陳剛,叩丁狼高階講師。原創文章,轉載請註明出處。

一.單體應用

什麼是單體應用?簡而言之我們以前傳統的應用就是單體應用,即所有的模組,元件等都在一個應用中進行開發,專案的部署也是把整個應用在一個容器中進行部署,並且一個應用享用一個數據庫。在單體應用中我們通常把應用分為三個組成部分:資料庫,業務層,表現層,這樣的應用結構在專案初期業務較少的情況下沒有任何問題,但是隨著業務需求不斷的增加要求單體應用中的業務邏輯,業務元件等日益擴張,應用將會變得越來越臃腫,往後的開發和維護就會變得特別麻煩,再加上越來越大訪的問量,併發越來越高,面對海量的使用者無論從應用效能還是從資料庫方面都有吃不消的時候。所以單體應用在一定程度上也有它的瓶頸。

二.微服務架構

什麼是微服務架構?簡單說就是把我們傳統的單體應用抽成一個個小型的服務,這些小型的服務本身也是一個個獨立的應用,這些應用可以獨立部署並執行,服務與服務之間通過 HTTP RESTful API進行通訊,而每一個服務只需要專注某一塊業務即可。例如一個簡單電商系統,我可以把使用者模組單獨抽成一個服務,把訂單模組抽成一個服務,把商品模組單獨抽成一個服務等,這樣一來我每一個服務應用責任分明,並且每一個服務可以連線自己獨立的資料庫,這樣一來無論從編碼,維護上都顯得特別方便。
圖例:

img1.png

三.SpringCloud簡介

SpringCloud是一個實現微服務架構的工具集,他是一系列框架的有序集合。它利用Spring Boot的開發便利性巧妙地簡化了分散式系統基礎設施的開發,如服務發現註冊、配置中心、訊息匯流排、負載均衡、斷路器、資料監控等,都可以用Spring Boot的開發風格做到一鍵啟動和部署。Spring並沒有重複製造輪子,它只是將目前各家公司開發的比較成熟、經得起實際考驗的服務框架組合起來,通過Spring Boot風格進行再封裝遮蔽掉了複雜的配置和實現原理,最終給開發者留出了一套簡單易懂、易部署和易維護的分散式系統開發工具包。

簡而言之SpringCloud很好的解決了微服務實施問題,而SpringCloud是基於SpringBoot的快速開發風格,還沒學習過SpringBoot的同學可以上https://ke.qq.com/course/265762進行學習。