這篇文章主要介紹如何搭建微服務(wù)SpringCloud項目架構(gòu),文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!
創(chuàng)新互聯(lián)主要從事網(wǎng)站制作、成都網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)丹徒,十多年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18982081108Spring的微服務(wù)框架SpringCloud受到眾多公司歡迎,給大家?guī)硪黄蚣艽罱ㄈ腴T。本次采用的版本是Spring Cloud版本為Finchley.RELEASE。
一、SpringCloud項目簡介
spring cloud:
為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)的一些工具,包括配置管理、服務(wù)發(fā)現(xiàn)、斷路器、路由、微代理、事件總線、全局鎖、決策競選、分布式會話等等。它運行環(huán)境簡單,可以在開發(fā)人員的電腦上跑。
Spring Boot:
旨在簡化創(chuàng)建產(chǎn)品級的 Spring 應(yīng)用和服務(wù),簡化了配置文件,使用嵌入式web服務(wù)器,含有諸多開箱即用微服務(wù)功能(spring cloud是基于springboot的,所以需要開發(fā)中對springboot有一定的了解)。
二、SpringCloud子項目介紹
Netflix Eureka:和zookeeper類似,是一個用于服務(wù)注冊和發(fā)現(xiàn)的組件,主要分為EurekaServer和EurekaClient,EurekaServer是服務(wù)注冊中心,EurekaClient為Eureka的客戶端(可以是生產(chǎn)者,也可以是消費者)
Feign:是一個聲明式的偽Http客戶端,它使得寫Http客戶端變得更簡單。使用Feign,只需要創(chuàng)建一個接口并注解。Feign默認(rèn)集成了Ribbon,并和Eureka結(jié)合,默認(rèn)實現(xiàn)了負(fù)載均衡的效果。
Spring Cloud Config:配置管理開發(fā)工具包,可以讓你把配置放到遠(yuǎn)程服務(wù)器,目前支持本地存儲、Git以及Subversion。
Spring Cloud Bus:事件、消息總線,用于在集群(例如,配置變化事件)中傳播狀態(tài)變化,可與Spring Cloud Config聯(lián)合實現(xiàn)熱部署。
Spring Cloud Netflix:針對多種Netflix組件提供的開發(fā)工具包,其中包括Eureka、Hystrix、Zuul、Archaius等。
Netflix Hystrix:容錯管理工具,旨在通過控制服務(wù)和第三方庫的節(jié)點,從而對延遲和故障提供更強(qiáng)大的容錯能力
Netflix Zuul:邊緣服務(wù)工具,是提供動態(tài)路由,監(jiān)控,彈性,安全等的邊緣服務(wù)。
Netflix Archaius:配置管理API,包含一系列配置管理API,提供動態(tài)類型化屬性、線程安全配置操作、輪詢框架、回調(diào)機(jī)制等功能。
Spring Cloud for Cloud Foundry:通過Oauth3協(xié)議綁定服務(wù)到CloudFoundry,CloudFoundry是VMware推出的開源PaaS云平臺。
Spring Cloud Sleuth:日志收集工具包,封裝了Dapper,Zipkin和HTrace操作。
Spring Cloud Data Flow:大數(shù)據(jù)操作工具,通過命令行方式操作數(shù)據(jù)流。
Spring Cloud Security:安全工具包,為你的應(yīng)用程序添加安全控制,主要是指OAuth3。
Spring Cloud Consul:封裝了Consul操作,consul是一個服務(wù)發(fā)現(xiàn)與配置工具,與Docker容器可以無縫集成。
Spring Cloud Zookeeper:操作Zookeeper的工具包,用于使用zookeeper方式的服務(wù)注冊和發(fā)現(xiàn)。
Spring Cloud Stream:數(shù)據(jù)流操作開發(fā)包,封裝了與Redis,Rabbit、Kafka等發(fā)送接收消息。
Spring Cloud CLI:基于 Spring Boot CLI,可以讓你以命令行方式快速建立云組件。
三、微服務(wù)開發(fā)要素
1、Codebase:從一個代碼庫部署到多個環(huán)境。
2、Dependencies:使用顯式的聲明隔離依賴,即模塊單獨運行,并可以顯式管理依賴。
3、Config:在系統(tǒng)外部存儲配置信息。
4、Backing Services:把支持性服務(wù)看做是資源,支持性服務(wù)包括數(shù)據(jù)庫、消息隊列、緩沖服務(wù)器等。
5、Build, release, run:嚴(yán)格的劃分編譯、構(gòu)建、運行階段,每個階段由工具進(jìn)行管理。
6、Processes:應(yīng)用作為無狀態(tài)執(zhí)行。
7、Port binding:經(jīng)由端口綁定導(dǎo)出服務(wù),優(yōu)先選擇 HTTP API 作為通用的集成框架。
8、Concurrency:并發(fā)性使用水平擴(kuò)展實現(xiàn),對于web就是水平擴(kuò)展web應(yīng)用實現(xiàn)。
9、Disposability:服務(wù)可處置性,任何服務(wù)可以隨意終止或啟動。
10、Dev/prod parity:開發(fā)和生產(chǎn)環(huán)境保持高度一致,一鍵式部署。
11、Logs:將日志看做是事件流來管理,所有參與的服務(wù)均使用該方式處理日志。
12、Admin processes:管理任務(wù)作為一次性的過程運行(使用腳本管理服務(wù)啟動和停止)。
以上是“如何搭建微服務(wù)SpringCloud項目架構(gòu)”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司行業(yè)資訊頻道!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)建站www.cdcxhl.com,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。