999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Spring Cloud實現(xiàn)業(yè)務(wù)系統(tǒng)微服務(wù)化的設(shè)計與實現(xiàn)

2018-05-28 08:18:06王方旭
電子技術(shù)與軟件工程 2018年8期
關(guān)鍵詞:功能服務(wù)系統(tǒng)

文/王方旭

1 引言

互聯(lián)網(wǎng)、云計算技術(shù)的高速發(fā)展,人們對信息化系統(tǒng)服務(wù)的依賴程度日益加深。隨著服務(wù)、數(shù)據(jù)的爆炸式增長,自上世紀(jì)90年代以單體架構(gòu)建設(shè)的IT服務(wù)系統(tǒng)越來越無法滿足現(xiàn)實要求。雖然SOA(面向服務(wù)的架構(gòu))的出現(xiàn)在一定程度上能夠緩解單體架構(gòu)的弊端,但SOA架構(gòu)系統(tǒng)的服務(wù)通信機制的高成本和對企業(yè)服務(wù)總線的依賴決定了仍不是最佳解決方案。“微服務(wù)”概念適時的出現(xiàn)為我們解決了問題,微服務(wù)架構(gòu)的一切皆服務(wù)的理念和在云計算領(lǐng)域的優(yōu)異表現(xiàn)獲得了普遍認(rèn)可。

本文介紹了一種基于Spring Cloud框架實現(xiàn)業(yè)務(wù)系統(tǒng)微服務(wù)化的案例,結(jié)合微服務(wù)架構(gòu)思想和Spring Cloud框架,將以單體架構(gòu)建設(shè)的應(yīng)用系統(tǒng)改造成的典型的微服務(wù)框架系統(tǒng),改造后,系統(tǒng)顯著提升了應(yīng)用開發(fā)、測試、部署運維一體化的能力。

2 微服務(wù)

微服務(wù)的概念是2014年3月由Martin Fowler在他的文章《Microservices》中首次提出,作為一種先進的架構(gòu)模式,其核心思想就是:應(yīng)用是由多個小的、相互獨立的、可采用分布式部署的服務(wù)組成,服務(wù)的開發(fā)、部署在各自獨立的進程中,不同服務(wù)通過一些輕量級交互機制來通信,例如 RPC、HTTP 等,服務(wù)可獨立擴展伸縮,每個服務(wù)定義了明確的邊界,不同的服務(wù)可以采用不同的編程語言來實現(xiàn),由獨立的團隊來維護。目前,隨著互聯(lián)網(wǎng)思維和云平臺部署越來趨勢化,微服務(wù)架構(gòu)在應(yīng)用系統(tǒng)的建設(shè)中所體現(xiàn)出的價值越來越大。

微服務(wù)架構(gòu)具有如下優(yōu)勢:

(1)微服務(wù)架構(gòu)將業(yè)務(wù)系統(tǒng)徹底的組件化、服務(wù)化,微服務(wù)專注于業(yè)務(wù)邏輯,服務(wù)功能簡單,邊界清晰,復(fù)雜度低,接口明確,服務(wù)利于開發(fā)、部署。

(2)服務(wù)耦合度低,每個服務(wù)是一個微型的應(yīng)用,有完整的架構(gòu),可獨立部署。

(3)微服務(wù)架構(gòu)允許根據(jù)服務(wù)的功能和團隊的自身條件選擇不同的技術(shù)路線,允許服務(wù)由不同的開發(fā)團隊開發(fā)。

(4)優(yōu)良的容錯機制和熔斷機制,保障微服務(wù)之間交互的友好性。

微服務(wù)架構(gòu)雖是一種先進的架構(gòu)模式,但仍有它的不足:

(1)微服務(wù)架構(gòu)的應(yīng)用是分布式系統(tǒng),相較于單體架構(gòu)的應(yīng)用系統(tǒng)具有較大的復(fù)雜性,尤其是需要在 RPC 或者消息傳遞之間選擇并完成進程間的通訊機制;此外,消息傳遞、服務(wù)調(diào)用的性能相對于單體應(yīng)用會有所下降。

(2)分布式系統(tǒng)帶來的數(shù)據(jù)庫數(shù)據(jù)的一致性問題對開發(fā)者提出更大的挑戰(zhàn)。

3 Spring Cloud

在Spring生態(tài)圈內(nèi)基于Spring Boot實現(xiàn)的Spring Cloud框架越來越受到業(yè)界的關(guān)注,Spring Cloud是一系列框架、組件的有序集合,擁有功能完善的、輕量級的微服務(wù)實現(xiàn)組件,例如服務(wù)發(fā)現(xiàn)治理、服務(wù)容錯、服務(wù)網(wǎng)關(guān)、服務(wù)配置、負(fù)載均衡、消息總線、服務(wù)跟蹤等方面均有經(jīng)過實踐檢驗的成熟組件。

如圖1,展示了基于Spring Cloud各組件的完整架構(gòu)圖。

(1)Eureka負(fù)責(zé)微服務(wù)架構(gòu)中服務(wù)治理功能,實現(xiàn)服務(wù)實例的自動化注冊與發(fā)現(xiàn)。

(2)Zuul在客戶端與服務(wù)端配置實現(xiàn),作為微服務(wù)網(wǎng)關(guān),可有效的減少客戶端與服務(wù)端的交互次數(shù),易于監(jiān)控,易于認(rèn)證,動態(tài)路由。

(3)Ribbon是負(fù)載均衡器,負(fù)責(zé)自動從Eureka Server發(fā)現(xiàn)服務(wù),然后基于某種負(fù)載均衡算法幫助服務(wù)消費者去請求服務(wù)。

(4)HyStrix是熔斷器,為避免發(fā)生雪崩效應(yīng)而引入,對服務(wù)延遲和故障提供更加強大容錯能力。

圖1

圖2

(5)Turbine是聚合HyStrix監(jiān)控數(shù)據(jù)的工具,結(jié)合HyStrix監(jiān)控微服務(wù)集群。

(6)Conf i g Server為分布式系統(tǒng)提供統(tǒng)一管理的配置,在Spring Cloud框架中使用有利于配置的集中管理,動態(tài)調(diào)整配置,且自動更新配置。

(7)Spring Cloud Bus管理和傳播服務(wù)之間的消息,通過集成當(dāng)前最主流的消息中間件RabbitMQ可有效的在各分布式服務(wù)之間解耦,提供高易用性、高擴展性的通信功能。

(8)Spring Cloud Sleuth集 成 ZipKin,為應(yīng)用實現(xiàn)分布式的鏈路監(jiān)控分析方案。

綜上,當(dāng)客戶端請求服務(wù)時,Zuul網(wǎng)關(guān)將請求動態(tài)轉(zhuǎn)發(fā),Ribbon會根據(jù)服務(wù)網(wǎng)關(guān)的配置實現(xiàn)負(fù)載均衡,Eureka獲知請求的服務(wù),在服務(wù)注冊中心獲得服務(wù);微服務(wù)向客戶端提供服務(wù)時,會讀取在Conf i g Server配置的統(tǒng)一配置;而HyStrix和Turbine負(fù)責(zé)監(jiān)控服務(wù)的熔斷情況,并給予圖形化展示;RabbitMQ在各服務(wù)之間通信;Sleuth+Zipkin追蹤每個請求,記錄請求的服務(wù)、耗時、網(wǎng)絡(luò)延遲等數(shù)據(jù)以備后續(xù)優(yōu)化系統(tǒng)時分析使用。

4 基于Spring Cloud的微服務(wù)架構(gòu)案例

4.1 系統(tǒng)現(xiàn)狀

傳輸勘察系統(tǒng)和資源系統(tǒng)是應(yīng)用于通信行業(yè)有線傳輸?shù)臉I(yè)務(wù)系統(tǒng),提供傳輸勘察設(shè)計的全過程的業(yè)務(wù)管理。隨著業(yè)務(wù)的發(fā)展,系統(tǒng)內(nèi)功能的優(yōu)化調(diào)整、系統(tǒng)間功能的調(diào)用和數(shù)據(jù)的交流非常普遍的,傳輸勘察系統(tǒng)和資源系統(tǒng)必須進行有效地資源整合。系統(tǒng)是作為依附于業(yè)務(wù)的發(fā)展而建設(shè)的系統(tǒng),由不同時間階段、不同開發(fā)團隊開發(fā)完成,并且傳輸勘察系統(tǒng)和資源系統(tǒng)采用了不同的技術(shù)路線。為了解決以上問題并使應(yīng)用系統(tǒng)在將來業(yè)務(wù)拓展時有良好的應(yīng)對能力,我們采用了微服務(wù)架構(gòu)的思想作為改造思路,而Spring Cloud框架作為在云部署、虛擬化方面均有優(yōu)異輸出的分布式應(yīng)用系統(tǒng)框架是實現(xiàn)微服務(wù)架構(gòu)的最佳解決方案。

4.2 業(yè)務(wù)系統(tǒng)微服務(wù)框架

基于傳輸勘察系統(tǒng)和資源系統(tǒng)的現(xiàn)狀和將來的發(fā)展趨勢,我們設(shè)計了如圖2的系統(tǒng)框架。

將各功能模塊封裝成微服務(wù)并部署在獨立的服務(wù)器中,各微服務(wù)提供服務(wù)接口注冊在Eureka Server服務(wù)注冊中心中;微服務(wù)之間消息的管理和傳播由Rabbit MQ完成,并部署負(fù)責(zé)鏈路監(jiān)控分析的服務(wù)監(jiān)控系統(tǒng)運行情況;對系統(tǒng)的訪問由基于Zuul Proxy的網(wǎng)關(guān)進行轉(zhuǎn)發(fā)。

5 總結(jié)

通過采用Spring Cloud框架對業(yè)務(wù)系統(tǒng)的改造,將業(yè)務(wù)功能復(fù)雜、耦合度高、系統(tǒng)維護成本大的系統(tǒng)改造成了獨立部署、耦合度低、業(yè)務(wù)功能組件化的分布式系統(tǒng),為系統(tǒng)的運營維護節(jié)省了極大的成本。隨著業(yè)務(wù)的發(fā)展,無論是新功能的增減還是業(yè)務(wù)邏輯的優(yōu)化,業(yè)務(wù)系統(tǒng)都能夠做到快速響應(yīng),敏捷開發(fā),靈活配置,快速部署,獨立運行,為業(yè)務(wù)的發(fā)展提供了快速有力的支持。

參考文獻

[1]Fowler M,Lewis J.Microservices.https://martinfowler.com/articles/microservices.html.articles/microservices.html.[2014-03-25].

[2]王磊.微服務(wù)架構(gòu)與實踐[M]. 北京:電子工業(yè)出版社,2015.

[3]周立.Spring Cloud與Docker微服務(wù)架構(gòu)實戰(zhàn)[M].北京:電子工業(yè)出版社,2017(05).

猜你喜歡
功能服務(wù)系統(tǒng)
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
服務(wù)在身邊 健康每一天
服務(wù)在身邊 健康每一天
服務(wù)在身邊 健康每一天
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
招行30年:從“滿意服務(wù)”到“感動服務(wù)”
商周刊(2017年9期)2017-08-22 02:57:56
關(guān)于非首都功能疏解的幾點思考
主站蜘蛛池模板: 亚洲AV无码久久天堂| 亚洲永久色| 日本精品影院| 久久77777| 一级毛片视频免费| 三级欧美在线| 亚洲aaa视频| 亚洲第一av网站| 欧美日韩久久综合| 永久免费精品视频| 国内精品久久人妻无码大片高| 午夜国产大片免费观看| 一级全黄毛片| 97成人在线观看| 日本少妇又色又爽又高潮| 国产精品护士| swag国产精品| 久久人人爽人人爽人人片aV东京热| 亚欧成人无码AV在线播放| 伊人久热这里只有精品视频99| 国产精品黄色片| 亚洲性网站| 视频在线观看一区二区| 99在线观看免费视频| 99热这里只有精品国产99| 伊人久久久大香线蕉综合直播| 婷婷色婷婷| 国产成人凹凸视频在线| 国产精品人人做人人爽人人添| 国产日本欧美在线观看| 国产精品污视频| 日本亚洲国产一区二区三区| 天天做天天爱夜夜爽毛片毛片| 狼友视频国产精品首页| 欧美日韩国产一级| 波多野结衣久久高清免费| 久久久久亚洲av成人网人人软件 | 尤物在线观看乱码| 国产成人精品一区二区三区| 亚洲熟妇AV日韩熟妇在线| 91国语视频| 免费在线一区| 一本大道视频精品人妻| 夜夜高潮夜夜爽国产伦精品| 亚洲日韩精品无码专区| www.99精品视频在线播放| 91精品久久久无码中文字幕vr| 一区二区三区成人| 99re热精品视频国产免费| 亚洲人人视频| 无码一区二区波多野结衣播放搜索| 亚洲综合中文字幕国产精品欧美 | 国产亚洲精品91| 精品成人一区二区三区电影| 国产精品主播| 超碰免费91| 国产剧情无码视频在线观看| 伊人色在线视频| 欧美色99| 亚洲午夜国产精品无卡| 伊人久久大香线蕉aⅴ色| 九色视频一区| 精品视频第一页| 中文字幕天无码久久精品视频免费 | 国产精品女同一区三区五区| 精品无码人妻一区二区| 麻豆精品在线| 欧美亚洲国产精品第一页| 丰满人妻一区二区三区视频| 国产精品偷伦在线观看| 国产欧美在线观看一区| 伦伦影院精品一区| 国内精品视频| 青青草原偷拍视频| 久久香蕉国产线看精品| 欧美视频在线不卡| 成年网址网站在线观看| 日韩人妻无码制服丝袜视频| jizz在线观看| 欧美日韩国产在线播放| 日韩中文精品亚洲第三区| 在线欧美日韩国产|