您好,登錄后才能下訂單哦!
什么是 SpringCloud:是一個服務治理平臺,提供了一些服務框架。包含了:服務注冊與發現、配置中心、消息中心 、負載均衡、數據監控等等。
1 概念定義
Spring Cloud 是一個微服務框架,相比 Dubbo 等 RPC 框架,?Spring Cloud 提
供的全套的分布式系統解決方案。
Spring Cloud 對微服務基礎框架 Netflix 的多個開源組件進行了封裝,同時又實現了和云端平臺以及和 Spring Boot 開發框架的集成。
Spring Cloud 為微服務架構開發涉及的配置管理,服務治理,熔斷機制,智能路由,微代理,控制總線,一次性 token,全局一致性鎖,leader 選舉,分布式 session,集群狀態管理等操作提供了一種簡單的開發方式。
Spring Cloud 為開發者提供了快速構建分布式系統的工具,開發者可以快速的啟動服務或構建應用、同時能夠快速和云平臺資源進行對接。
2 Spring Cloud 的項目的位置
Sping Cloud 是 Spring 的一個頂級項目與 Spring Boot、Spring Data 位于同一位置。
3 Spring Cloud 的子項目
Spring Cloud 包含了很多子項目,如:
3.1Spring Cloud Config:配置管理工具,支持使用 Git 存儲配置內容,支持應用配置的外部化存儲,支持客戶端配置信息刷新、加解密配置內容等
3.2 Spring Cloud Bus:事件、消息總線,用于在集群(例如,配置變化事件)中傳播狀態變化,可與 Spring Cloud Config 聯合實現熱部署。
3.3Spring Cloud Netflix:針對多種 Netflix 組件提供的開發工具包,其中包括Eureka、Hystrix、Zuul、Archaius 等。
3.3.1Netflix Eureka:一個基于 rest 服務的服務治理組件,包括服務注冊中心、服務注冊與服務發現機制的實現,實現了云端負載均衡和中間層服務器的故障轉移。
3.3.2Netflix Hystrix:容錯管理工具,實現斷路器模式,通過控制服務的節點,從而對延遲和故障提供更強大的容錯能力。
3.3.3Netflix Ribbon:客戶端負載均衡的服務調用組件。
3.3.4Netflix Feign:基于 Ribbon 和 Hystrix 的聲明式服務調用組件。
3.3.5Netflix Zuul:微服務網關,提供動態路由,訪問過濾等服務。
3.3.6Netflix Archaius:配置管理 API,包含一系列配置管理 API,提供動態類型化屬性、線程安全配置操作、輪詢框架、回調機制等功能。
3.4Spring Cloud for Cloud Foundry : 通 過 Oauth3 協 議 綁 定 服 務 到CloudFoundry,CloudFoundry 是 VMware 推出的開源 PaaS 云平臺。
3.5Spring Cloud Sleuth:日志收集工具包,封裝了 Dapper,Zipkin 和 HTrace操作。
3.6Spring Cloud Data Flow:大數據操作工具,通過命令行方式操作數據流。
3.7Spring Cloud Security:安全工具包,為你的應用程序添加安全控制,主要是指 OAuth3。
3.8Spring Cloud Consul:封裝了 Consul 操作,consul 是一個服務發現與配置工具,與 Docker 容器可以無縫集成
3.9Spring Cloud Zookeeper : 操 作 Zookeeper 的 工 具 包 , 用 于 使 用zookeeper 方式的服務注冊和發現。
3.10Spring Cloud Stream:數據流操作開發包,封裝了與 Redis,Rabbit、Kafka 等發送接收消息。
3.11Spring Cloud CLI:基于 Spring Boot CLI,可以讓你以命令行方式快速建立云組件。
1 常見版本號說明
軟件版本號:2.0.2.RELEASE
2:主版本號。當功能模塊有較大更新或者整體架構發生變化時,主版本號會更新
0:次版本號。次版本表示只是局部的一些變動。
2:修改版本號。一般是 bug 的修復或者是小的變動
RELEASE:希臘字母版本號。次版本號用戶標注當前版本的軟件處于哪個開發階段
1.1希臘字母版本號
Base:設計階段。只有相應的設計沒有具體的功能實現。
Alpha:軟件的初級版本。存在較多的 bug
Bate:表示相對 alpha 有了很大的進步,消除了嚴重的 bug,還存在一些潛在的 bug。
Release:該版本表示最終版。
2 Spring Cloud 版本號說明
2.1為什么 Spring Cloud 版本用的是單詞而不是數字?
設計的目的是為了更好的管理每個 Spring Cloud 的子項目的清單。避免子的版本號與子項目的版本號混淆。
2.2版本號單詞的定義規則
采用倫敦的地鐵站名稱來作為版本號的命名,根據首字母排序,字母順序靠后的版本號越大。
2.3版本發布計劃說明
由于篇幅有限,文案過長,筆者無法為大家講述微服務中的方方面面。微服務是-一個非常宏觀的話題,要想切實落地微服務架構,光靠一兩本書是遠遠不夠的。 微服務粒度、持續集成、自動化機制、組織機構的建設乃至如何從傳統架構向微服務架構遷移,都是值得我們深思的問題。
由于篇幅有限,文案過長,筆者無法為大家講述微服務中的方方面面。微服務是-一個非常宏觀的話題,要想切實落地微服務架構,光靠一兩本書是遠遠不夠的。 微服務粒度、持續集成、自動化機制、組織機構的建設乃至如何從傳統架構向微服務架構遷移,都是值得我們深思的問題。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。