阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

2020-10-16 15:00:42

微服務

軟體架構是一個包含各種組織的系統組織,這些元件包括Web伺服器,應用伺服器,資料庫,儲存,通訊層),它們彼此或和環境存在關係。系統架構的目標是解決利益相關者的關注點。

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

什麼是微服務架構

微服務架構優勢

獨立部署,由於微服務具備獨立的執行程序,所以每個微服務也可以獨立部署。當某個微服務發生變更時無需編譯、部署整個應用。由微服務組成的應用相當於具備一系列可並行的釋出流程,使得釋出更加高效,同時降低對生產環境所造成的風險,最終縮短應用交付週期。

技術選型靈活微服務架構下,技術選型是去中心化的。每個團隊可以根據自身服務的需求和行業發展的現狀,自由選擇最適合的技術棧。由於每個微服務相對簡單,當需要對技術棧進行升級時所面臨的風險較低,甚至完全重構一個微服務也是可行的。

容錯:當某個組建發生故障時,在單一程序的傳統架構下,故障很有可能在程序內擴散,形成應用全域性性的不可用。在微服務架構下,故障會被隔離在單個服務中。若設計良好,其他服務可通過重試、平穩退化等機制實現應用層面的容錯。

擴充套件:單塊架構應用也可以實現橫向擴充套件,就是將整個應用完整的複製到不同的節點。當應用的不同元件在擴充套件需求上存在差異時,微服務架構便體現出其靈活性,因為每個服務可以根據實際需求獨立進行擴充套件。

高並行

1、應用快取

2、HTTP快取

3、多級快取

4、池化

5、步並行

6、擴容

7、佇列

Dubbo

1、服務叢集-叢集容錯模式

2、服務提供者叢集與負載均衡

3、架構高並行高可用選型技術

4、部署圖

Spring Cloud 19個技術

1、Spring Cloud Config 設定中心,利用git集中管理程式的設定。

2、Spring Cloud Netflix 整合眾多Netflix的開源軟體

3、Spring Cloud Bus 訊息匯流排,利用分散式訊息將服務和服務範例連線在一起,用於在一個叢集中傳播狀態的變化

4、Spring Cloud for Cloud Foundry 利用Pivotal Cloudfoundry整合你的應用程式

5、Spring Cloud Cloud Foundry Service Broker 為建立管理雲託管服務的服務代理提供了一個起點。

6、Spring Cloud Cluster 基於Zookeeper, Redis, Hazelcast, Consul實現了領導選舉和平民狀態模式的抽象和實現。

7、Spring Cloud Consul 基於Hashicorp Consul實現的服務發現和設定管理。

8、Spring Cloud Security 在Zuul代理中為OAuth2 rest使用者端和認證頭轉發提供負載均衡

9、Spring Cloud Sleuth SpringCloud應用的分散式追蹤系統,和Zipkin,HTrace,ELK相容。

10、Spring Cloud Data Flow 一個雲本地程式和操作模型,組成資料微服務在一個結構化的平臺上。

11、Spring Cloud Stream 基於Redis,Rabbit,Kafka實現的訊息微服務,簡單宣告模型用以在Spring Cloud應用中收發訊息。

12、Spring Cloud Stream App Starters 基於Spring Boot為外部系統提供spring的整合

13、Spring Cloud Task 短生命週期的微服務,為SpringBooot應用簡單宣告新增功能和非功能特性。

14、Spring Cloud Task App Starters

15、Spring Cloud Zookeeper 服務發現和設定管理基於Apache Zookeeper。

16、Spring Cloud for Amazon Web Services 快速和亞馬遜網路服務整合。

17、Spring Cloud Connectors 便於PaaS應用在各種平臺上連線到後端像資料庫和訊息經紀服務。

18、Spring Cloud Starters (專案已經終止並且在Angel.SR2後的版本和其他專案合併)

19、Spring Cloud CLI 外掛用Groovy快速的建立Spring Cloud元件應用。

Spring Cloud共整合了19個子專案,裡面都包含一個或者多個第三方的元件或者框架!

網際網路微服務架構設計總結

共五大模組74個知識點解析網際網路微服務架構:高並行、高可用、Dubbo、SpringCloud、Docker

這裡由於文案過長,小編以截圖的模式給大家展示出來,想要獲取到這份網際網路微服務架構設計的朋友們可以轉發此文關注我新增助理VX:MXW5308 免費拿走

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

高並行-應用快取

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

高並行- HTTP快取

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

高並行- 多級快取(分散式快取)

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

高並行-擴容

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

高並行-擴容分散式資料庫

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

高並行-佇列應用場景

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

高並行小結——應用快取、HTTP快取、多級快取、池化、非同步並行、擴容、佇列

高可用

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

高可用-負載均衡

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

高可用-反向代理

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

高可用-隔離術

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

高可用小結——負載均衡與反向代理、隔離、限流、降級、超時與重試、回滾、壓力測試與應急預案

Dubbo

詳細介紹

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

Dubbo服務叢集-叢集容錯模式

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

Dubbo 服務提供者叢集與負載均衡

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

Dubbo架構高並行高可用選型技術

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

Dubbo大體部署圖

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

Spring Cloud

Spring Cloud和dubbo比較-背景

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

Spring Cloud微服務架構圖

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

Spring Cloud大致部署圖

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

Spring cloud、Docker署的支援

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

Spring Cloud和Dubbo比較-對比

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

技術架構建議

1、Dubbo,是阿里巴巴服務化治理的核心框架,並被廣泛應用於阿里巴巴集團的各成員站點(阿里巴巴現在使用架構為HSF)。 於2012-10-24最後版本2.5.3成為最後一版本,已經成為過去,也是過去的王者

2、Spring Cloud,從命名我們就可以知道,它是Spring Source的產物,Spring社群的強大背書可以說是Java企業界最有影響力的組織了,除了Spring Source之外,還有Pivotal和Netfix是其強大的後盾與技術輸出,是現今微服務的王者

3、Saas的部署最好在Docker環境下部署,Spring Cloud無縫銜接

4、 Spring Cloud 和 Dubbo技術在服務治理上Spring Cloud 顯然優越於Dubbo,設定管理,服務發現,斷路器,智慧路由,微代理,控制匯流排,一次性令牌,全域性鎖,領導選舉,分散式對談,群集狀態,一直是dubbo架構部署執行後最為頭疼的事情, Spring Cloud 一一自帶元件解決了這些問題。

5、針對當前專案來說,團隊專案採用spring boot, 學習成本成本很少

6、 Spring Cloud依託於spring boot,天然可以部署在Docker環境下,天生就是為高可用而設計的,維護成本比dubbo低很多

阿里巴巴微服務:SpringCloud+SpringBoot+Docker+Dubbo

這裡由於文案過長,小編以截圖的模式給大家展示出來,想要獲取到這份阿里巴巴微服務:SpringCloud+SpringBoot+Docker+Dubbo 的朋友們可以轉發此文關注我新增助理VX:MXW5308  免費拿走

架構設計

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

微服務架構

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

Docker環境搭建

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

SpringBoot

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

使用Dubbox+Spring Boot搭建微服務架構

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

基於Redis+ActiveMQ實現高並行存取

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

分散式下的第三方接入

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

高並行測試

阿里巴巴資深架構師深度解析微服務架構設計之SpringCloud+Dubbo

 

這裡由於文案過長,小編以截圖的模式給大家展示出來,想要獲取到這份阿里巴巴微服務:SpringCloud+SpringBoot+Docker+Dubbo 的朋友們可以轉發此文關注我新增助理VX:MXW5308 即可免費拿走