溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Spring Cloud Alibaba的示例分析

發(fā)布時(shí)間:2021-07-24 09:37:50 來(lái)源:億速云 閱讀:183 作者:小新 欄目:編程語(yǔ)言

這篇文章主要介紹Spring Cloud Alibaba的示例分析,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

Spring Cloud Alibaba 致力于提供微服務(wù)開(kāi)發(fā)的一站式解決方案。此項(xiàng)目包含開(kāi)發(fā)分布式應(yīng)用微服務(wù)的必需組件,方便開(kāi)發(fā)者通過(guò) Spring Cloud 編程模型輕松使用這些組件來(lái)開(kāi)發(fā)分布式應(yīng)用服務(wù)。

主要功能

  • 服務(wù)限流降級(jí):默認(rèn)支持 WebServlet、WebFlux, OpenFeign、RestTemplate、Spring Cloud Gateway, Zuul, Dubbo 和 RocketMQ 限流降級(jí)功能的接入,可以在運(yùn)行時(shí)通過(guò)控制臺(tái)實(shí)時(shí)修改限流降級(jí)規(guī)則,還支持查看限流降級(jí) Metrics 監(jiān)控。

  • 服務(wù)注冊(cè)與發(fā)現(xiàn):適配 Spring Cloud 服務(wù)注冊(cè)與發(fā)現(xiàn)標(biāo)準(zhǔn),默認(rèn)集成了 Ribbon 的支持。

  • 分布式配置管理:支持分布式系統(tǒng)中的外部化配置,配置更改時(shí)自動(dòng)刷新。

  • 消息驅(qū)動(dòng)能力:基于 Spring Cloud Stream 為微服務(wù)應(yīng)用構(gòu)建消息驅(qū)動(dòng)能力。

  • 分布式事務(wù):使用 @GlobalTransactional 注解, 高效并且對(duì)業(yè)務(wù)零侵入地解決分布式事務(wù)問(wèn)題。。

  • 阿里云對(duì)象存儲(chǔ):阿里云提供的海量、安全、低成本、高可靠的云存儲(chǔ)服務(wù)。支持在任何應(yīng)用、任何時(shí)間、任何地點(diǎn)存儲(chǔ)和訪問(wèn)任意類(lèi)型的數(shù)據(jù)。

  • 分布式任務(wù)調(diào)度:提供秒級(jí)、精準(zhǔn)、高可靠、高可用的定時(shí)(基于 Cron 表達(dá)式)任務(wù)調(diào)度服務(wù)。同時(shí)提供分布式的任務(wù)執(zhí)行模型,如網(wǎng)格任務(wù)。網(wǎng)格任務(wù)支持海量子任務(wù)均勻分配到所有 Worker(schedulerx-client)上執(zhí)行。

  • 阿里云短信服務(wù):覆蓋全球的短信服務(wù),友好、高效、智能的互聯(lián)化通訊能力,幫助企業(yè)迅速搭建客戶觸達(dá)通道。

組件

  • Sentinel:把流量作為切入點(diǎn),從流量控制、熔斷降級(jí)、系統(tǒng)負(fù)載保護(hù)等多個(gè)維度保護(hù)服務(wù)的穩(wěn)定性。

  • Nacos:一個(gè)更易于構(gòu)建云原生應(yīng)用的動(dòng)態(tài)服務(wù)發(fā)現(xiàn)、配置管理和服務(wù)管理平臺(tái)。

  • RocketMQ:一款開(kāi)源的分布式消息系統(tǒng),基于高可用分布式集群技術(shù),提供低延時(shí)的、高可靠的消息發(fā)布與訂閱服務(wù)。

  • Dubbo:Apache Dubbo? 是一款高性能 Java RPC 框架。

  • Seata:阿里巴巴開(kāi)源產(chǎn)品,一個(gè)易于使用的高性能微服務(wù)分布式事務(wù)解決方案。

  • Alibaba Cloud ACM:一款在分布式架構(gòu)環(huán)境中對(duì)應(yīng)用配置進(jìn)行集中管理和推送的應(yīng)用配置中心產(chǎn)品。

  • Alibaba Cloud OSS: 阿里云對(duì)象存儲(chǔ)服務(wù)(Object Storage Service,簡(jiǎn)稱 OSS),是阿里云提供的海量、安全、低成本、高可靠的云存儲(chǔ)服務(wù)。您可以在任何應(yīng)用、任何時(shí)間、任何地點(diǎn)存儲(chǔ)和訪問(wèn)任意類(lèi)型的數(shù)據(jù)。

  • Alibaba Cloud SchedulerX: 阿里中間件團(tuán)隊(duì)開(kāi)發(fā)的一款分布式任務(wù)調(diào)度產(chǎn)品,提供秒級(jí)、精準(zhǔn)、高可靠、高可用的定時(shí)(基于 Cron 表達(dá)式)任務(wù)調(diào)度服務(wù)。

  • Alibaba Cloud SMS: 覆蓋全球的短信服務(wù),友好、高效、智能的互聯(lián)化通訊能力,幫助企業(yè)迅速搭建客戶觸達(dá)通道。

如何使用

如何引入依賴

如果需要使用已發(fā)布的版本,在 dependencyManagement 中添加如下配置。

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>com.alibaba.cloud</groupId>
      <artifactId>spring-cloud-alibaba-dependencies</artifactId>
      <version>2.1.0.RELEASE</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

然后在 dependencies 中添加自己所需使用的依賴即可使用。

版本管理規(guī)范

項(xiàng)目的版本號(hào)格式為 x.x.x 的形式,其中 x 的數(shù)值類(lèi)型為數(shù)字,從 0 開(kāi)始取值,且不限于 0~9 這個(gè)范圍。項(xiàng)目處于孵化器階段時(shí),第一位版本號(hào)固定使用 0,即版本號(hào)為 0.x.x 的格式。

由于 Spring Boot 1 和 Spring Boot 2 在 Actuator 模塊的接口和注解有很大的變更,且 spring-cloud-commons 從 1.x.x 版本升級(jí)到 2.0.0 版本也有較大的變更,因此我們采取跟 SpringBoot 版本號(hào)一致的版本:

  • 1.5.x 版本適用于 Spring Boot 1.5.x

  • 2.0.x 版本適用于 Spring Boot 2.0.x

  • 2.1.x 版本適用于 Spring Boot 2.1.x

Spring BootSpring CloudSpring Cloud Alibaba
2.1.xGreenwich0.9.x
2.0.xFinchley0.2.x
1.5.xEdgware0.1.x
1.5.xDalston0.1.x

現(xiàn)狀

之前spring cloud alibaba 一直處于一個(gè)孵化狀態(tài)??疵志涂梢钥闯鰜?lái)Spring Cloud 有著密切的關(guān)系。2019 月 7 月 24 日,Spring 官方宣布 Spring Cloud Alibaba 畢業(yè),倉(cāng)庫(kù)遷移至 Alibaba Github OSS 下。這意味著 Spring Cloud Alibaba 是國(guó)內(nèi)首個(gè)進(jìn)入 Spring 社區(qū)的開(kāi)源項(xiàng)目。

  • 2018 年 7 月,正式開(kāi)源,進(jìn)入孵化器。

  • 2018 年 10 月,發(fā)布開(kāi)源后的第一個(gè)版本 0.1.0 & 0.2.0 (適配 Spring Cloud Edgware & Finchley ),包含 Nacos Config, Nacos Discovery、 Sentinel 以及 OSS 4 個(gè)組件。

  • 2018 年 12 月,發(fā)布第二個(gè)版本 0.1.1 & 0.2.1,新增 Spring Cloud Stream RocketMQ Binder 和 Spring Cloud Bus RocketMQ 組件。

  • 2019 年 4 月,發(fā)布 Preview Release 版本 0.9.0, 0.1.2 & 0.2.2 (首次適配 Spring Cloud Greenwich ),新增 Dubbo Spring Cloud、Seata 組件。顛覆性地使用 Spring Cloud 客戶端調(diào)用 Dubbo 服務(wù)

  • 2019 年 7 月,Spring Cloud 官方宣布 Spring Cloud Alibaba 畢業(yè)。

  • 2019 月 8 月,發(fā)布畢業(yè)后的第一個(gè)版本 1.5.0, 2.0.0 & 2.1.0。新增 spring-cloud-alibaba-sentinel-gateway 模塊以完善 Sentinel 對(duì) Spring Cloud 體系 Gateway 的支持。

Spring 社區(qū) spring cloud alibaba官方地址

我們都知道 Spring Restful Api 的規(guī)范性是我們喜歡的,規(guī)范代表著通用。而dubbo目前看來(lái)性能的收益也是讓大家能感受到的。而Spring Cloud Alibaba 的出現(xiàn)兼容這倆種微服務(wù)生態(tài)的優(yōu)勢(shì)。讓魚(yú)與熊掌不可兼得的情況提供了一個(gè)更好的方案。

個(gè)人覺(jué)得Spring Cloud Alibaba 為喜歡cloud、dubbo倆種微服務(wù)的整合提供了一個(gè)較好的方案。但是會(huì)讓感覺(jué)商業(yè)氣息有點(diǎn)濃烈。畢竟阿里也是主要是為了推自己的產(chǎn)品服務(wù)

以上是“Spring Cloud Alibaba的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI