SpringCloud 組件

1. SpringCloud Alibaba簡介


1)簡介
Spring Cloud Alibaba致力於提供微服務開發的一站式解決方案。此項目包含開發分佈式應用微服務的必需組件,方便開發者通過Spring Coud編程模型輕鬆使用這些組件來開發分佈式應用服務。
依括Spring Cloud Alibaba,您只需要添加一些註解和少量配置,就可以將Spring Cloud應用接入阿里微服務解決方案,通過阿里中間件來迅速搭建分佈式應用系統。

https://github.com/alibaba/spring-cloud-alibaba
2)SpringCloud相關

SpringCloud的幾大痛點

  • SpringCloud部分組件停止維護和更新,給開發帶來不便;
  • SpringCloud 部分環境搭建複雜,沒有完善的可視化界面,我們需要大量的二次開發和定製
  • Springcloud配置複雜,難以上手,部分配置差別難以區分和合理應用

SpringCloud Alibaba的優勢:

  • 阿里使用過的組件經歷了考驗,性能強悍,設計合理,現在開源出來大家用
  • 成套的產品搭配完善的可視化界面給開發運維帶來極大的便利
  • 搭建簡單,學習曲線低。

結合Springcloud Alibaba我們最終的技術搭配方案:

  • SpringCloud Alibaba-Nacos:註冊中心(服務發現/註冊)
  • SpringCloud Allbaba-Nacos:配置中心(動態配置管理)
  • SpringCloud-Ribbon:負載均衡
  • SpringCloud-Feign:聲明式HTTP客戶端(調用遠程服務)
  • SpringCloud Alibaba-Sentinel:服務容錯(限流、降級、熔斷)
  • SpringCloud-Gateway:API 網關(webflux編程模式)
  • SpringCloud-Sleuth:調用鏈監控
  • Springcloud Alibaba-Seata:原Fescar,即分佈式事務解決方案

3)版本選擇
由於Spring Boot 1和Spring Boot 2在Actuator模塊的接口和註解有很大的變更,且spring-cloud-commons從1.xx版本升級到2.0.0版本也有較大的變更,因此我們採取跟SpringBoot 版本號一致的版本:

·1.5.x版本適用於Spring Boot 1.5.x

·2.0.x版本適用於Spring Boot 2.0.x

·2.1.x版本適用於Spring Boot2.1.x

4)項目中的依賴

在common項目中引入如下,進行統一管理

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

2、SpringCloud Alibaba-Nacos[作爲註冊中心]


Nacos 是阿里巴巴開源的一個更易於構建雲原生應用的動態服務發現、配置管理和服務管理平臺。他是使用java編寫。需要依賴java環境。
Nacos 文檔地址:https://nacos.io/zh-cn/docs/quick-starthtml
1)、下載nacos-server

htps://github.com/alibaba/nacos/releases
2)、啓動nacos-server
·雙擊bin中的startup.cmd文件
·訪問 http:/localhost:8848/nacos/
·使用默認的nacos/nacos 進行登錄

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章