国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于微服務(wù)架構(gòu)的老人監(jiān)管系統(tǒng)的研究

2019-09-10 07:22:44謝松王雯張琪

謝松 王雯 張琪

【摘??要】隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,分布式開(kāi)發(fā)已經(jīng)成為系統(tǒng)的主流,在系統(tǒng)的維護(hù)以及對(duì)多次訪問(wèn)的處理上有著天然的優(yōu)勢(shì)。本文設(shè)計(jì)了一個(gè)基于微服務(wù)架構(gòu)的老人監(jiān)控系統(tǒng)的項(xiàng)目構(gòu)建,以及相關(guān)組件的搭配。

【關(guān)鍵詞】微服務(wù)架構(gòu);SpringCloud?for?Aibaba;分布式開(kāi)發(fā)

1?引言

2014年被稱(chēng)為微服務(wù)元年,自提出到現(xiàn)在的發(fā)展成熟,提出的目的就是有效的拆分應(yīng)用,實(shí)現(xiàn)敏捷開(kāi)發(fā)和部署,實(shí)現(xiàn)分布式開(kāi)發(fā),為了應(yīng)對(duì)高并發(fā)和龐大的訪問(wèn)量,實(shí)現(xiàn)異地多活等特性。

智能管理監(jiān)控系統(tǒng)采用多接口調(diào)用的形式完成對(duì)前端發(fā)送數(shù)據(jù),實(shí)現(xiàn)實(shí)時(shí)監(jiān)控和提醒修改等功能,本文會(huì)從微服務(wù)的構(gòu)架實(shí)現(xiàn)以及相關(guān)集成工具的角度進(jìn)行探討。對(duì)微服務(wù)架構(gòu)的系統(tǒng)做一次分析。

2?研究現(xiàn)狀

微服務(wù)架構(gòu)是一種新的軟件體系設(shè)計(jì)模式,它并沒(méi)有形成統(tǒng)一,嚴(yán)格的定義,但是基于其分布式環(huán)境應(yīng)用的場(chǎng)景,卻擁有一些共同的特征:比如開(kāi)發(fā)敏捷性、持續(xù)交付、可伸縮性、最終一致性等[1]。

微服務(wù)的基本思想在于考慮圍繞著業(yè)務(wù)領(lǐng)域組件來(lái)創(chuàng)建應(yīng)用,這些應(yīng)用可獨(dú)立地進(jìn)行開(kāi)發(fā)、管理和加速[2]。在分散的組件中使用微服務(wù)云架構(gòu)和平臺(tái),使部署、管理和服務(wù)功能交付變得更加簡(jiǎn)單[3]。

微服務(wù)架構(gòu)將笨重的單體應(yīng)用拆分為多個(gè)不同的服務(wù),每個(gè)不同的服務(wù)處理一個(gè)細(xì)小功能,使用沙箱的隔離機(jī)制,做到互不干擾,解決了單體應(yīng)用啟動(dòng)時(shí)間長(zhǎng),并發(fā)處理能力弱的缺點(diǎn)。每個(gè)服務(wù)可以使用不同的語(yǔ)言進(jìn)行編寫(xiě),符合計(jì)算機(jī)原理的輸入和輸出,使用統(tǒng)一數(shù)據(jù)傳輸方式進(jìn)行交流,正在的做到了一個(gè)方法只做一種是,一個(gè)功能只做一件事。

在對(duì)問(wèn)題的處理方面,將龐大的單體應(yīng)用拆分為一套服務(wù),不對(duì)功能進(jìn)行更改,但是對(duì)程序進(jìn)行分割,在測(cè)試調(diào)通時(shí),針對(duì)不同的部分進(jìn)行不同的調(diào)試,每一個(gè)服務(wù)都有一個(gè)明確的定界,被分割為完全獨(dú)立的部分,服務(wù)間使用統(tǒng)一RPC進(jìn)行通信。實(shí)現(xiàn)了模塊化,實(shí)現(xiàn)了負(fù)載均衡以及單點(diǎn)故障處理,在一個(gè)服務(wù)出錯(cuò)時(shí)不用停止整個(gè)應(yīng)用,只需要停止部分功能,實(shí)現(xiàn)了快速啟動(dòng)。每個(gè)個(gè)體服務(wù)都能被更快的開(kāi)發(fā)和維護(hù)。

開(kāi)發(fā)者在遵循同一通訊原則的前提下可以使用不同的開(kāi)發(fā)模式與語(yǔ)言,開(kāi)發(fā)者在替換和調(diào)試新技術(shù)的上線時(shí)可以實(shí)現(xiàn)部分上線,迭代替換,不需要在同一時(shí)間內(nèi)實(shí)現(xiàn)對(duì)整個(gè)應(yīng)用的維護(hù)和替換,減少了工作量,同時(shí)降低了維護(hù)系統(tǒng)說(shuō)消耗的時(shí)間。實(shí)現(xiàn)了維護(hù)后的秒級(jí)啟動(dòng)。

微服務(wù)應(yīng)用使用分布式部署,不同的部分分管不同的功能,一個(gè)服務(wù)處理一個(gè)功能,不同功能之間使用Docker的沙箱隔離機(jī)制進(jìn)行縱向分割,在一個(gè)服務(wù)出錯(cuò)的時(shí)候啟動(dòng)備用服務(wù),確保了整個(gè)系統(tǒng)的可靠性。

3?系統(tǒng)設(shè)計(jì)

項(xiàng)目大體使用Java語(yǔ)言進(jìn)行開(kāi)發(fā),在相是配的框架中選擇了Spring?Cloud?for?Alibaba,其中集成了大量的分布式應(yīng)用開(kāi)發(fā)所必須要的組件,項(xiàng)目使用Maven進(jìn)行統(tǒng)一依賴(lài)管理。

Nacos:系統(tǒng)服務(wù)與注冊(cè)發(fā)現(xiàn)中心,啟動(dòng)的服務(wù)被注冊(cè)在Nacos上,由其進(jìn)行統(tǒng)一管理和發(fā)現(xiàn)。

Sentinel:服務(wù)熔斷管理,監(jiān)管服務(wù)的狀體,提供服務(wù)熔斷后的處理放反,實(shí)現(xiàn)熔斷類(lèi)的接口。@FeignClient(value?=?"service-provider",fallback?=?EchoServiceFallback.class)

Dubbo:實(shí)現(xiàn)高效的負(fù)載均衡策略,區(qū)分消費(fèi)者與提供者,實(shí)現(xiàn)大批量的服務(wù)守護(hù),同時(shí)提供智能分發(fā),實(shí)現(xiàn)大量的服務(wù)異步鏈接,實(shí)現(xiàn)了系統(tǒng)的垂直擴(kuò)展與水平擴(kuò)展。

使用3臺(tái)阿里云學(xué)生服務(wù)器進(jìn)行線上測(cè)試,開(kāi)放不同端口進(jìn)行分布式開(kāi)發(fā),實(shí)現(xiàn)了項(xiàng)目組成員的協(xié)同線上開(kāi)發(fā)。

項(xiàng)目代碼管理平臺(tái):GitLab,所有項(xiàng)目代碼上傳到私有云端管理,增強(qiáng)安全性,降低協(xié)同開(kāi)發(fā)的難度。

私有倉(cāng)庫(kù):使用Nexus作為項(xiàng)目生成倉(cāng)庫(kù)的管理者,實(shí)現(xiàn)了本地資源的并行上傳和多地同步。方便開(kāi)發(fā)成員訪問(wèn)內(nèi)部編寫(xiě)的資源包。

鏡像服務(wù):使用Harbor進(jìn)行鏡像服務(wù)管理,確保開(kāi)發(fā)中數(shù)據(jù)的安全性,以及服務(wù)的上線穩(wěn)定。

通過(guò)API網(wǎng)關(guān)形式將內(nèi)部每一個(gè)服務(wù)放入服務(wù)注冊(cè)中心精心分發(fā),減少用戶(hù)端需要記錄的IP數(shù)量同事為小部分的維護(hù)提供了便利,不需要沒(méi)有大范圍變更的情況下更改用戶(hù)端的數(shù)據(jù),減少了版本的更新。

內(nèi)部使用裝萌針對(duì)Java的序列化語(yǔ)言Kryo進(jìn)行RPC通信,進(jìn)一步提升系統(tǒng)運(yùn)行的效率,服務(wù)有多個(gè)備份,當(dāng)一個(gè)服務(wù)阻塞時(shí)使用下一備用服務(wù),實(shí)現(xiàn)負(fù)載均衡。

4?結(jié)語(yǔ)

隨著互聯(lián)網(wǎng)技術(shù)的飛快發(fā)展,傳統(tǒng)的單體應(yīng)用在面臨多并發(fā)和高訪問(wèn)量的情況下存在缺陷,而且系統(tǒng)內(nèi)部耦合度較高。微服務(wù)架構(gòu)具有良好的橫向擴(kuò)展能力,能夠?qū)吸c(diǎn)的壓力分布到其他每一個(gè)服務(wù)中??紤]到本系統(tǒng)將要面臨的多次訪問(wèn)以及長(zhǎng)時(shí)間異步請(qǐng)求,所以在設(shè)計(jì)的初始階段就是用了分布式的開(kāi)發(fā)思想。對(duì)不同的系統(tǒng)進(jìn)行不同的分析,設(shè)計(jì)出于實(shí)際需求相符合的系統(tǒng)才是開(kāi)發(fā)中的重要步驟。

參考文獻(xiàn):

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

[2]?黃小鋒,張晶.微服務(wù)架構(gòu)框架介紹與實(shí)現(xiàn)[J].電腦與信息技術(shù),2016(6):14-16.

[3]?蔣勇.基于微服務(wù)架構(gòu)的基礎(chǔ)設(shè)施設(shè)計(jì)[J].軟件,2016,37(5):93-97.

基金項(xiàng)目:

國(guó)家大學(xué)生創(chuàng)新創(chuàng)業(yè)項(xiàng)目成果(編號(hào):201913001014)。

作者簡(jiǎn)介:

謝松(1999.10-),男,漢族,江西撫州人,本科軟件工程專(zhuān)業(yè)在讀,主要進(jìn)行Java系統(tǒng)設(shè)計(jì)與開(kāi)發(fā);

王雯(1999.10-),女,漢族,浙江衢州人,本科軟件工程專(zhuān)業(yè)在讀,主要從事Web系統(tǒng)開(kāi)發(fā)與研究;

張琪(1972.9-),男,漢族,江蘇南京人,副教授,系統(tǒng)分析師,主要從事軟件系統(tǒng)、物聯(lián)網(wǎng)及大數(shù)據(jù)等領(lǐng)域研究。

(作者單位:寧波財(cái)經(jīng)學(xué)院金融與信息學(xué)院)

张北县| 宜川县| 隆尧县| 牟定县| 德兴市| 长子县| 乃东县| 界首市| 泾阳县| 大化| 灌云县| 疏附县| 准格尔旗| 上犹县| 封丘县| 宁陕县| 迁西县| 贡山| 娄烦县| 舒兰市| 武川县| 合肥市| 肇源县| 陇西县| 清涧县| 嘉鱼县| 古交市| 习水县| 监利县| 明星| 尼木县| 沈丘县| 平罗县| 张家界市| 清流县| 阿坝县| 白朗县| 墨竹工卡县| 黄骅市| 汤原县| 定襄县|