本文主要介紹了架構(gòu)技術(shù)選型與設(shè)計(jì)-微服務(wù)選型,Spring cloud 實(shí)現(xiàn)采用的技術(shù),希望對(duì)您的學(xué)習(xí)有所幫助。
成都創(chuàng)新互聯(lián)公司是一家專(zhuān)業(yè)提供云龍企業(yè)網(wǎng)站建設(shè),專(zhuān)注與網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站設(shè)計(jì)、H5建站、小程序制作等業(yè)務(wù)。10年已為云龍眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專(zhuān)業(yè)網(wǎng)站設(shè)計(jì)公司優(yōu)惠進(jìn)行中。
架構(gòu)技術(shù)選型與設(shè)計(jì)-DUBBODubbo,是阿里巴巴服務(wù)化治理的核心框架,并被廣泛應(yīng)用于阿里巴巴集團(tuán)的各成員站點(diǎn)(阿里巴巴現(xiàn)在使用架構(gòu)為HSF)。 于2012-10-24最后版本2.5.3成為最后一版本,由當(dāng)當(dāng)接手維護(hù),命名為dubbox;2017年突然繼續(xù)dubbo進(jìn)行維護(hù),最后更新版本時(shí)間為 2017-10-11 22:21
Dubbo 核心部件:Provider: 暴露服務(wù)的提供方。Consumer:調(diào)用遠(yuǎn)程服務(wù)的服務(wù)消費(fèi)方。Registry: 服務(wù)注冊(cè)中心和發(fā)現(xiàn)中心。Monitor: 統(tǒng)計(jì)服務(wù)和調(diào)用次數(shù),調(diào)用時(shí)間監(jiān)控中心。(dubbo的控制臺(tái)頁(yè)面中可以顯示)Container:服務(wù)運(yùn)行的容器。Dubbo服務(wù)集群-集群容錯(cuò)模式
架構(gòu)技術(shù)選型與設(shè)計(jì)-微服務(wù)選型
架構(gòu)技術(shù)選型與設(shè)計(jì)-DUBBO
架構(gòu)技術(shù)選型與設(shè)計(jì)-DUBBO
架構(gòu)技術(shù)選型與設(shè)計(jì)-微服務(wù)選型Spring Cloud,從命名我們就可以知道,它是Spring Source的產(chǎn)物,Spring社區(qū)的強(qiáng)大背書(shū)可以說(shuō)是Java企業(yè)界最有影響力的組織了,除了Spring Source之外,還有Pivotal和Netfix是其強(qiáng)大的后盾與技術(shù)輸出。其中Netflix開(kāi)源的整套微服務(wù)架構(gòu)套件是Spring Cloud的核心。如果拿Dubbo與Netflix套件做對(duì)比,前者在國(guó)內(nèi)影響力較大,后者在國(guó)外影響力較大,在背景上可以打個(gè)平手;但是若要與Spring Cloud做對(duì)比,由于Spring Source的加入,在背書(shū)上,Spring Cloud略勝一籌,但是在高并發(fā)上dubbo曾經(jīng)在阿里的運(yùn)營(yíng)中實(shí)際承載過(guò)過(guò)億用戶(hù)同時(shí)在線(xiàn)的,而Netflix 并沒(méi)有實(shí)際的上線(xiàn)應(yīng)用中體現(xiàn)過(guò)。Spring Cloud下面有19個(gè)子項(xiàng)目(可能還會(huì)新增)分別覆蓋了微服務(wù)架構(gòu)下的方方面面,服務(wù)治理只是其中的一個(gè)方面,一定程度來(lái)說(shuō),Dubbo只是Spring Cloud Netflix中的一個(gè)子集。但是在選擇框架上,方案完整度恰恰是一個(gè)需要重點(diǎn)關(guān)注的內(nèi)容,當(dāng)然從高可用和高并發(fā)一起考慮,Spring Cloud 無(wú)疑是最佳選擇。
1、Spring Cloud Config 配置中心,利用git集中管理程序的配置。
2、Spring Cloud Netflix 集成眾多Netflix的開(kāi)源軟件
3、Spring Cloud Bus 消息總線(xiàn),利用分布式消息將服務(wù)和服務(wù)實(shí)例連接在一起,用于在一個(gè)集群中傳播狀態(tài)的變化
4、Spring Cloud for Cloud Foundry 利用Pivotal Cloudfoundry集成你的應(yīng)用程序
5、Spring Cloud Cloud Foundry Service Broker 為建立管理云托管服務(wù)的服務(wù)代理提供了一個(gè)起點(diǎn)。
6、Spring Cloud Cluster 基于Zookeeper, redis, Hazelcast, Consul實(shí)現(xiàn)的領(lǐng)導(dǎo)選舉和平民狀態(tài)模式的抽象和實(shí)現(xiàn)。
7、Spring Cloud Consul 基于Hashicorp Consul實(shí)現(xiàn)的服務(wù)發(fā)現(xiàn)和配置管理。
8、Spring Cloud Security 在Zuul代理中為OAuth3 rest客戶(hù)端和認(rèn)證頭轉(zhuǎn)發(fā)提供負(fù)載均衡
9、Spring Cloud Sleuth SpringCloud應(yīng)用的分布式追蹤系統(tǒng),和Zipkin,HTrace,ELK兼容。
10、Spring Cloud Data Flow 一個(gè)云本地程序和操作模型,組成數(shù)據(jù)微服務(wù)在一個(gè)結(jié)構(gòu)化的平臺(tái)上。
11、Spring Cloud Stream 基于Redis,Rabbit,Kafka實(shí)現(xiàn)的消息微服務(wù),簡(jiǎn)單聲明模型用以在Spring Cloud應(yīng)用中收發(fā)消息。
12、Spring Cloud Stream App Starters 基于Spring Boot為外部系統(tǒng)提供spring的集成
13、Spring Cloud Task 短生命周期的微服務(wù),為SpringBooot應(yīng)用簡(jiǎn)單聲明添加功能和非功能特性。
14、Spring Cloud Task App Starters
15、Spring Cloud Zookeeper 服務(wù)發(fā)現(xiàn)和配置管理基于Apache Zookeeper。
16、Spring Cloud for Amazon Web Services 快速和亞馬遜網(wǎng)絡(luò)服務(wù)集成。
17、Spring Cloud Connectors 便于PaaS應(yīng)用在各種平臺(tái)上連接到后端像數(shù)據(jù)庫(kù)和消息經(jīng)紀(jì)服務(wù)。
18、Spring Cloud Starters (項(xiàng)目已經(jīng)終止并且在Angel.SR2后的版本和其他項(xiàng)目合并
)19、Spring Cloud CLI 插件用Groovy快速的創(chuàng)建Spring Cloud組件應(yīng)用。Spring Cloud共集成了19個(gè)子項(xiàng)目,里面都包含一個(gè)或者多個(gè)第三方的組件或者框架!
1、spring cloud : 一個(gè)云應(yīng)用工具,為云應(yīng)用開(kāi)發(fā)的配置管理、服務(wù)發(fā)現(xiàn)、斷路器、智能路由、微代理、控制總線(xiàn)、全局鎖定、決策競(jìng)選、分布式會(huì)話(huà)和集群狀態(tài)管理等操作
2、spring cloud config :配置管理開(kāi)發(fā)工具包
3、 spring cloud Bus :事件消息總線(xiàn)用于集群(例如:配置變化時(shí)間)中傳播狀態(tài)變化,與spring cloud config 聯(lián)合實(shí)現(xiàn)熱部署
4、 spring cloud Netflix Eureka : 云端負(fù)載均衡基礎(chǔ),一個(gè)基于Rest的服務(wù),用于定位服務(wù),以實(shí)現(xiàn)云端的負(fù)載均衡和中間層服務(wù)器的故障轉(zhuǎn)移
5、 spring cloud Netflix Hystrix : 容錯(cuò)管理工具,旨在通過(guò)控制服務(wù)和第三方庫(kù)的節(jié)點(diǎn),從而對(duì)延遲和故障提供更強(qiáng)大的容錯(cuò)能力
6 、 Netflix ZUUL: 邊緣服務(wù)工具,提供動(dòng)態(tài)路由、監(jiān)控、彈性、安全等邊緣服務(wù)
7、 spring cloud sleuth :日志收集工具包、封裝Purpose 、Zipkin和Trace
8、 Spring Cloud Security : 安全工具包,為應(yīng)用程序添加安全控制,主要是OAuth3
9、 spring cloud turbine :聚合服務(wù)器發(fā)送時(shí)間流,監(jiān)控集群下Netflix 和 metrics 情況
Spring cloud 配置中心
Spring cloud 注冊(cè)中心
Spring cloud 網(wǎng)關(guān): 服務(wù)路由、安全認(rèn)證、會(huì)話(huà)共享、客戶(hù)端負(fù)載均衡、統(tǒng)一異常處理、跨域請(qǐng)求
Spring cloud 斷路由