SpringCloud 總覽

本系列基於Spring Cloud **Finchley SR2 & SOFABoot 3.0.0spring

Spring Cloud 爲開發人員提供了快速構建分佈式系統中一些常見模式的工具(例如配置管理、服務發現、斷路器、智能路由、微代理、控制總線、一次性令牌、全局鎖、leader選舉、分佈式session、集羣狀態)。分佈式系統的協調致使了樣板模式, 使用 Spring Cloud 開發人員能夠快速地支持實現這些模式的服務和應用程序。它們能夠在任何分佈式環境中很好地工做,包括開發人員本身的筆記本電腦,裸機數據中心,以及Cloud Foundry等託管平臺。數據庫

系列文章

Features


Spring Cloud專一於爲典型用例提供良好的開箱即用體驗,併爲其餘用戶提供可擴展性機制。編程

  • Distributed/versioned configuration       分佈式/版本化配置
  • Service registration and discovery         服務註冊和發現
  • Routing                                                  智能路由
  • Service-to-service calls                         service-to-service調用
  • Load balancing                                       負載均衡
  • Circuit Breakers                                      斷路器
  • Global locks                                            全局鎖
  • Leadership election and cluster state     leader選舉和集羣狀態管理
  • Distributed messaging                            分佈式消息

主要項目


項目名稱
項目職能
Spring Cloud Config
Spring Cloud 提供的分佈式配置中心,爲外部配置提供了客戶端和服務端的支持。
Spring Cloud Netflix
與各類Netflix OSS組件集成(Eureka,Hystrix,Zuul,Archaius等)。
Spring Cloud Bus
用於將服務和服務實例與分佈式消息傳遞鏈接在一塊兒的事件總線。用於跨羣集傳播狀態更改(例如,配置更改事件)。
Spring Cloud Cloudfoundry
提供應用程序與 Pivotal Cloud Foundry 集成。提供服務發現實現,還能夠輕鬆實現受SSO和OAuth2保護的資源。
Spring Cloud Open Service Broker
爲構建實現 Open service broker API 的服務代理提供了一個起點。    
Spring Cloud Cluster
提供Leadership選舉,如:Zookeeper, Redis, Hazelcast, Consul等常見狀態模式的抽象和實現。
Spring Cloud Consul
封裝了Consul操做,consul 是一個服務發現與配置工具,與Docker容器能夠無縫集成。
Spring Cloud Security
基於spring security的安全工具包,爲你的應用程序添加安全控制。在Zuul代理中爲負載平衡的OAuth2 rest客戶端和身份驗證頭中繼提供支持。
Spring Cloud Sleuth
Spring Cloud 提供的分佈式鏈路跟蹤組件,兼容zipkin、HTracer和基於日誌的跟蹤(ELK)
Spring Cloud Data Flow
大數據操做工具,做爲Spring XD的替代產品,它是一個混合計算模型,結合了流數據與批量數據的處理方式。
Spring Cloud Stream
數據流操做開發包,封裝了與Redis,Rabbit、Kafka等發送接收消息。
Spring Cloud CLI
基於 Spring Boot CLI,可讓你以命令行方式快速創建雲組件。
Spring Cloud OpenFeign
一個http client客戶端,致力於減小http client客戶端構建的複雜性。
Spring Cloud Gateway
Spring Cloud 提供的網關服務組件
Spring Cloud Stream App Starters
Spring Cloud Stream App Starters是基於Spring Boot的Spring 集成應用程序,可提供與外部系統的集成。
Spring Cloud Task 提供雲端計劃任務管理、任務調度。
Spring Cloud Task App Starters
Spring Cloud任務應用程序啓動器是SpringBoot應用程序,它能夠是任何進程,包括不會永遠運行的Spring批處理做業,而且在有限的數據處理週期後結束/中止。
Spring Cloud Zookeeper
操做Zookeeper的工具包,用於使用zookeeper方式的服務發現和配置管理。
Spring Cloud AWS
提供與託管的AWS集成
Spring Cloud Connectors
便於雲端應用程序在各類PaaS平臺鏈接到後端,如:數據庫和消息代理服務。
Spring Cloud Starters
Spring Boot式的啓動項目,爲Spring Cloud提供開箱即用的依賴管理。
Spring Cloud Contract
Spring Cloud Contract是一個整體項目,其中包含幫助用戶成功實施消費者驅動合同方法的解決方案。
Spring Cloud Pipelines
Spring Cloud Pipelines提供了一個固定意見的部署管道,其中包含確保您的應用程序能夠零停機方式部署並輕鬆回滾出錯的步驟。
Spring Cloud Function
Spring Cloud Function經過函數促進業務邏輯的實現。 它支持Serverless 提供商之間的統一編程模型,以及獨立運行(本地或PaaS)的能力。

SpringCloud 與 SpringBoot 版本兼容關係

Release Train Boot Version
Greenwich
2.1.x
Finchley
2.0.x
Edgware
1.5.x
Dalston
1.5.x

SpringCloud 與子工程版本關係

Component Edgware.SR5 Finchley.SR2 Finchley.BUILD-SNAPSHOT
spring-cloud-aws
1.2.3.RELEASE
2.0.1.RELEASE
2.0.1.BUILD-SNAPSHOT
spring-cloud-bus
1.3.3.RELEASE
2.0.0.RELEASE
2.0.1.BUILD-SNAPSHOT
spring-cloud-cli
1.4.1.RELEASE
2.0.0.RELEASE
2.0.1.BUILD-SNAPSHOT
spring-cloud-commons
1.3.5.RELEASE
2.0.2.RELEASE
2.0.2.BUILD-SNAPSHOT
spring-cloud-contract
1.2.6.RELEASE
2.0.2.RELEASE
2.0.2.BUILD-SNAPSHOT
spring-cloud-config
1.4.5.RELEASE
2.0.2.RELEASE
2.0.2.BUILD-SNAPSHOT
spring-cloud-netflix
1.4.6.RELEASE
2.0.2.RELEASE
2.0.2.BUILD-SNAPSHOT
spring-cloud-security
1.2.3.RELEASE
2.0.1.RELEASE
2.0.1.BUILD-SNAPSHOT
spring-cloud-cloudfoundry
1.1.2.RELEASE
2.0.1.RELEASE
2.0.1.BUILD-SNAPSHOT
spring-cloud-consul
1.3.5.RELEASE
2.0.1.RELEASE
2.0.2.BUILD-SNAPSHOT
spring-cloud-sleuth
1.3.5.RELEASE
2.0.2.RELEASE
2.0.2.BUILD-SNAPSHOT
spring-cloud-stream
Ditmars.SR4
Elmhurst.SR1
Elmhurst.BUILD-SNAPSHOT
spring-cloud-zookeeper
1.2.2.RELEASE
2.0.0.RELEASE
2.0.1.BUILD-SNAPSHOT
spring-boot
1.5.16.RELEASE
2.0.6.RELEASE
2.0.7.BUILD-SNAPSHOT
spring-cloud-task
1.2.3.RELEASE
2.0.0.RELEASE
2.0.1.BUILD-SNAPSHOT
spring-cloud-vault
1.1.2.RELEASE
2.0.2.RELEASE
2.0.2.BUILD-SNAPSHOT
spring-cloud-gateway
1.0.2.RELEASE
2.0.2.RELEASE
2.0.2.BUILD-SNAPSHOT
spring-cloud-openfeign
2.0.2.RELEASE
2.0.2.BUILD-SNAPSHOT
spring-cloud-function
1.0.1.RELEASE
1.0.0.RELEASE
1.0.1.BUILD-SNAPSHOT
  • Finchley 構建並使用Spring Boot 2.0.x,與 Spring Boot 1.5.x 不兼容。
  • Dalston 和 Edgware 基於 Spring Boot 1.5.x 構建,不兼容 SpringBoot 2.0.x
  • Camden 版本迭代正式結束,Dalston 將於2018年12月結束使用,Edgware 將遵循 Spring Boot 1.5.x 的生命週期結束。
  • Camden 基於SpringBoot 1.4.x 構建,可是也會支持 1.5.x 版本
  • Brixton 和 Angel 迭代結束時間是2017年7月,Brixton 基於SpringBoot 1.3.x ,同時也支持 1.4.x 版本
  • Angel 基於 SpringBoot 1.2.x ,在某些方式不兼容 SpringBoot 1.3.x 。
  • Brixton 構建在SpringBoot 1.3.x ,不兼容 SpringBoot 1.2.x 。一些基於Angel的庫和大多數應用程序能夠在Brixton上正常運行,但若是OAuth2具有spring-cloud-security 1.0的特性,則須要在任何地方進行更改。x被使用(它們大多在1.3.0中被移到Spring Boot中)。
相關文章
相關標籤/搜索