成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

SpringCloud 專欄:快速入門指南!

開發 架構
Netflix 是一家技術實力雄厚的美國流媒體娛樂公司,主要通過互聯網向全球觀眾提供電影、電視劇、紀錄片、動畫片等在線視頻服務,類似于國內的騰訊視頻,全球范圍內擁有超過 2 億的訂閱用戶。

一、背景介紹

在微服務架構日益盛行的今天,Spring Cloud 憑借其豐富的功能集、高度的可集成性和對微服務架構的天然支持,自推出以來,就受到軟件開發者的熱烈追棒和廣泛應用。

使用過 Spring Cloud 的同學應該深有感觸。Spring Cloud 是一個功能強大的微服務框架,它提供了一套完整的分布式系統解決方案,比如配置管理、服務治理、熔斷機制、智能路由、微代理、控制總線等多種功能,可以幫助開發者快速構建和管理微服務應用。無論是大型企業還是初創公司,都可以以非常低的成本搭建一套高效、分布式、容錯的云平臺。

當項目引入 Spring Cloud 技術之后,一個接口的請求流程可以用如下圖來簡要描述。

圖片

從圖中可以看出,與單體應用相比,微服務的接口調用鏈路和服務部署方式要復雜許多。

二、技術體系

Spring Cloud 的核心技術體系,可以用如下圖來簡要概括。

圖片

在介紹 Spring Cloud 核心組件之前,我們先簡單的介紹一下 Netflix 這家公司,因為上圖提到的很多核心組件都來自于這家公司。

Netflix 是一家技術實力雄厚的美國流媒體娛樂公司,主要通過互聯網向全球觀眾提供電影、電視劇、紀錄片、動畫片等在線視頻服務,類似于國內的騰訊視頻,全球范圍內擁有超過 2 億的訂閱用戶。

如果要滿足這么龐大的用戶群體在線訪問網站視頻內容,常規的網站架構肯定是無法承載的,為了更好的滿足海量用戶的在線視頻服務,Netflix 在微服務架構方面有著深入的研究和實踐,并開源了一系列組件。如上文提到的 Eureka、Ribbon、Hystrix、Feign、Zuul 等組件,就是 Netflix OSS 開源項目的一部分。由于其優秀的微服務架構實踐和服務特性,Spring Cloud 將其集成到自己的生態圈,并組成微服務的核心。

2.1、第一代 Spring Cloud

初代的 Spring Cloud 核心成員,可以用如下表來概括。

組件

來源

說明

spring-cloud-eureka

來源于Netflix Eureka

服務注冊中心組件

spring-cloud-ribbon

來源于Netflix Ribbon

服務負載均衡組件

Spring-cloud-hystrix

來源于Netflix Hystrix

服務熔斷器組件

Spring-cloud-feign

來源于Netflix Feign

服務遠程調用組件

Spring-cloud-zuul

來源于Netflix Zuul

服務網關組件

Spring-cloud-config

自研

服務配置中心組件

Spring-cloud-bus

自研

服務消息總線

Spring-cloud-sleuth

自研

服務日志跟蹤

Spring-cloud-zikpin

來自第三方

服務日志全鏈路監控

在此,只列舉了一些常用的核心組件,實際上 Spring Cloud 生態圈的核心組件非常的多,比如 Spring Cloud Security、Spring Cloud Data Flow、Spring Cloud Stream、Spring Cloud Task、Spring Cloud Connectors、Spring Cloud CLI 等等,每個組件都有它獨特的技能,再次就不一一介紹了,有興趣的朋友可以訪問 Spring Cloud 的官網介紹。

2.1、第二代 Spring Cloud

在 2018 年,由于 Netflix 對 Eureka,Hystrix 等組件不再繼續開發和維護了, 因此 Spring Cloud 不斷的引入了其它的開源組件,以此來壯大自己的生態圈,同時也陸續推出了自己的一些組件。

Spring Cloud 第一代和第二代的核心組件差異匯總,如下表所示。

核心組件

第一代 Spring Cloud

第二代 Spring Cloud

服務注冊中心

Eureka, Consul

Nacos

服務負載均衡

Ribbon

spring-cloud-loadbalancer

服務熔斷器

Hystrix

Resilience4j,Sentinel

服務遠程調用

Feign

Spring Cloud OpenFeign,基于 Feign 的升級版

服務網關

Zuul

Spring Cloud Gateway

配置中心

Spring Cloud Config

Nacos,Apollo

服務日志全鏈路監控

zipkin

Skywalking

因為 Zuul 1.x 性能一般,雖然 Netflix 之后也推出了 Zuul 2.x,相比第一代性能也提升了不少,但當時一直跳票(延遲對外開放)。隨后 Spring Cloud 官方推出了自研的 Spring Cloud gateway,類似自研的還有 spring-cloud-loadbalancer,spring-cloud-r4j,Spring-cloud-openfeign 等,相比初代組件,性能和維護方面都有明顯的提升。

三、版本選擇

如果你翻看過 Spring Cloud 項目源碼,你會發現它其實是一個擁有諸多子項目的大型綜合項目,同時每個子項目也都維護著自己的發布版本號。這就意味著,每一個 Spring Cloud 的版本都會包含不同的子項目版本。

為了更好的管理子項目版本號,避免主版本名與子項目的發布版本號出現混亂。Spring Cloud 沒有采用版本號的方式來命令,而是通過名稱的方式來命令。

通常情況下,Spring Cloud 對外發行的版本號,采用的是倫敦地鐵站的名字來命令,根據字母表的順序來進行排序,比如:第一個 Release 版本:Angel,第二個 Release 版本:Brixton,以此類推……

每個大版本也有多個小版本號,比如Angel.SR5Brixton.SR6,其中SR5SR6就是小版本號。

小版本號的名稱命令也有講究,當一個大版本的 Spring Cloud 項目發布內容積累到臨界點或者一個嚴重 bug 解決可用后,就會發布一個“service releases”版本,簡稱SRX版本,其中X是一個遞增數字。

Spring Cloud 的版本號與每個子項目的版本號之間的關系,可以用如下表簡要概括。

組件

Angel.SR6

Brixton.SR5

依次類推

spring-cloud-aws

1.0.4.RELEASE

1.1.1.RELEASE

...

spring-cloud-bus

1.0.3.RELEASE

1.1.1.RELEASE

...

spring-cloud-cli

1.0.6.RELEASE

1.1.5.RELEASE

...

spring-cloud-commons

1.0.5.RELEASE

1.1.1.RELEASE

...

spring-cloud-config

1.0.4.RELEASE

1.1.3.RELEASE

...

spring-cloud-netflix

1.0.7.RELEASE

1.1.5.RELEASE

...

spring-cloud-security

1.0.3.RELEASE

1.1.2.RELEASE

...

spring-cloud-starters

1.0.6.RELEASE


...

spring-cloud-cloudfoundry


1.0.0.RELEASE

...

spring-cloud-cluster


1.0.1.RELEASE

...

spring-cloud-consul


1.0.2.RELEASE

...

spring-cloud-sleuth


1.0.6.RELEASE

...

spring-cloud-stream


1.0.2.RELEASE

...

spring-cloud-zookeeper


1.0.2.RELEASE

...

spring-boot

1.2.8.RELEASE

1.3.7.RELEASE

...

spring-cloud-task


1.0.2.RELEASE

...

Spring Cloud 的發展勢頭非常迅猛,截止目前,大版本號已經到Leyton了。盡管如此,對于初學者而言,了解版本號的定義非常重要,避免后續在基于 Spring Cloud 框架來開發的時候走彎路。

由于 Spring Cloud 子項目特別多,尤其是在現有 Spring Boot 基礎上集成的時候,很容易因為版本號不同出現各種不兼容現象,以下是 Spring Cloud 與 Spring Boot 版本匹配關系。

Spring Cloud

Spring Boot

Angel

兼容Spring Boot 1.2.x

Brixton

兼容Spring Boot 1.3.x,Spring Boot 1.4.x

Camden

兼容Spring Boot 1.4.x,Spring Boot 1.5.x

Dalston

兼容Spring Boot 1.5.x

Edgware

兼容Spring Boot 1.5.x

Finchley

兼容Spring Boot 2.0.x

Greenwich

兼容Spring Boot 2.1.x

Hoxton

兼容Spring Boot 2.2.x,Spring Boot 2.3.x

Ilford

兼容Spring Boot 2.4.x,Spring Boot 2.5.x

Jubilee

兼容Spring Boot 2.6.x,Spring Boot 2.7.x

Kilburn

兼容Spring Boot 3.0.x,Spring Boot 3.1.x

Leyton

兼容Spring Boot 3.2.x,Spring Boot 3.3.x

在實際的微服務開發過程中,當代碼編寫一切都是正常的,但是運行時各種出錯,大概率應該是版本號的選擇上出了問題。推薦結合當前使用的 Spring Boot 版本,采用與 Spring Cloud 匹配的穩定版本號來開發,會省去不少的麻煩。

四、小結

最后總結一下,Spring、Spring Boot、Spring Cloud 這三者之間的關系。

Spring -> Spring Boot -> Spring Cloud

關于 Spring Boot,在之前的技術系列文章中我們有所介紹過, 它是一個基于 Spring 框架實現的應用程序快速開發工具,開發者可以使用它來快速的構建一個可獨立運行的 Java 應用程序,開箱即用。

對于 Spring Cloud,它是一個基于 Spring Boot 實現的云應用開發工具,通過它可以快速搭建微服務架構項目,比如配置管理、服務治理、熔斷機制、智能路由、微代理、控制總線等多種功能,開發者可以以非常低的成本搭建一套高效、分布式、容錯的云平臺。

因此可見,Spring Cloud 離不開 Spring Boot,兩者屬于依賴關系。

在之前的技術系列文章中,我們有詳細的介紹過 Spring Boot 相關知識,本期將開啟 Spring Cloud 技術系列相關知識介紹。

五、參考

1.https://www.didispace.com/spring-cloud/springcloud-version.html

2.http://www.ityouknow.com/springcloud/2017/05/01/simple-springcloud.html

責任編輯:武曉燕 來源: 潘志的技術筆記
相關推薦

2011-03-08 16:50:35

2021-03-02 06:32:03

Ansible系統運維

2019-11-13 15:44:17

Kafka架構數據

2020-11-25 19:05:50

云計算SaaS公有云

2021-03-01 13:00:21

Ansible系統運維

2024-08-27 09:09:49

Web系統JSP

2010-12-23 13:45:23

Office 2010批量激活

2020-11-13 05:49:09

物聯網城域網IOT

2021-02-22 18:50:03

Ansible系統運維

2023-12-19 09:36:35

PostgreSQL數據庫開源

2009-09-22 13:01:04

ibmdwBPM

2020-05-11 09:54:33

JavaScript開發技術

2022-10-28 18:36:18

2011-03-08 09:22:37

2010-08-03 15:19:08

FlexBuilder

2011-05-18 15:15:44

MySQL

2021-03-26 10:31:19

人工智能AIOps

2015-10-29 15:36:19

Redis入門

2010-07-20 16:13:25

Perl線程

2010-12-31 13:30:12

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲女优在线播放 | 中文字幕在线观看一区 | 国产精品日韩一区二区 | 久久精品小视频 | 久久久久国产一区二区三区四区 | gogo肉体亚洲高清在线视 | 日韩一区二区三区视频在线播放 | 国内自拍第一页 | 精品国产91乱码一区二区三区 | 国产日韩欧美一区二区 | www.色综合 | 国产伦精品一区二区 | 日韩免费在线视频 | 欧美成年黄网站色视频 | 日本在线综合 | 97视频在线免费 | 91日韩 | 免费观看的av| av毛片免费| 国产精品夜间视频香蕉 | 一二区成人影院电影网 | 中文字幕一区二区三区在线观看 | 亚洲一区中文字幕在线观看 | 性色视频在线观看 | 午夜久久久久久久久久一区二区 | 成人动漫一区二区 | 一区二区视频在线 | 99色在线| 一区二区在线 | 理论片免费在线观看 | 在线观看国产wwwa级羞羞视频 | 亚洲深夜福利 | japanhd美女动 | xx性欧美肥妇精品久久久久久 | 中文av网站| 国产福利91精品一区二区三区 | 成人深夜福利 | 国产精品美女久久久久久免费 | 欧洲亚洲精品久久久久 | av一二三四 | 久久天天躁狠狠躁夜夜躁2014 |