前言
小編總結一下最近系統學習的Spring Cloud的相關知識,學習之後的總結是對於知識的深入理解和吸收,小編單按照學習內容簡單羅列一下相關的知識點。
微服務與微服務架構
一、微服務的文章
https://martinfowler.com/articles/microservices.html
推薦閱讀這篇文章,裏面講到了微服務的由來和發展的趨勢,以及微服務架構的特徵。
二、微服務
1.概念
微服務的由來,主要是互聯網中的系統越來越龐大,業務邏輯越來越複雜,部署難度越來越大。
微服務應運而生,它具備可獨立部署,可擴展的特點,甚至允許以不同的語言來編寫不同的服務,可以由不同的團隊開發管理。
通過拆分服務進行組件化。
每個服務有獨立的數據庫。
2.優缺點
優點:
- 微服務鬆耦合;
- 微服務小,易聚焦一個指定的業務功能或需求,便於小團隊開發;
- 可以使用不同語言開發;
- 可以融合不同的新技術,如數據爬取,調用其他第三方服務;
- 微服務是業務邏輯的代碼,不與前端HTML、CSS等內容混合等。
缺點:
- 微服務架構可能帶來過多操作,服務之間的調用等;
- 需要DevOps技巧,服務需要構建連續部署系統,敏捷開發、持續交付的特點;
- 分佈式系統難以部署和管理。
三、微服務架構
微服務架構風格,是一種將單一應用程序劃分爲一套小型服務的方法,每個小型服務都在自己的流程中運行,並與輕量級機制(通常是HTTP資源的API)進行通信
四、微服務與微服務架構
兩者分別是從局部和整理來說的,微服務架構是一個宏觀層面的概念,微服務是一個單獨的個體,將各個服務集成到一起,組成一個系統。
微服務的技術棧
多個技術的集合,如小米品牌下各種商品線:家居、電器、智能手機等多方面的產銷。
微服務也有很多微服務條目及其對應的落地技術,如下:
對比Spring Cloud 與Dubbo框架
一、微服務架構
1.Spring Cloud
Spring Cloud是基於spring boot實現的,使用HTTP的RESTful風格作爲API的調用方式,包含多個子項目,構成了一個微服務架構體系。
2.Dubbo框架
Dubbo採用Zookeeper作爲註冊中心,RPC作爲調用方式,致力於提供高性能和透明化RPC遠程服務調用方案。它與Spring無縫集成,基於服務提供方(服務端)和服務調用方(客戶端)角色構建簡單模型。
二、兩種架構在技術點的比較
在技術點上,Spring Cloud提供了全家桶式的組件,基本上各種組件都具備,而dubbo不夠完善。
Spring Cloud 主要包括技術點
三、從社區熱度看
Spring Cloud在Git Hub上的活躍度較高,維護性較強。
https://github.com/spring-cloud
Dubbo的社區活躍度比較低,如圖所示:
綜上,Spring Cloud框架是比較受歡迎的,技術比較完善,不過在使用中,如果能夠將這些技術點的作用發揮出來也是很重要的。
感謝您的訪問!