【摘要】:近年來(lái),隨著互聯(lián)網(wǎng)企業(yè)的快速發(fā)展,很多企業(yè)擁有大量的服務(wù)和數(shù)據(jù)資源,并通過(guò)開(kāi)放平臺(tái)的方式,公開(kāi)企業(yè)的API(應(yīng)用程序編程接口),將這些內(nèi)部的服務(wù)和數(shù)據(jù)轉(zhuǎn)換為公開(kāi)的資源,面向大眾以吸引第三方開(kāi)發(fā)者通過(guò)其公開(kāi)的API規(guī)范,進(jìn)行二次開(kāi)發(fā),達(dá)到再次創(chuàng)新的目的。當(dāng)前,第三方開(kāi)發(fā)者實(shí)時(shí)獲取企業(yè)數(shù)據(jù),或者企業(yè)系統(tǒng)向第三方開(kāi)發(fā)者推送數(shù)據(jù)的場(chǎng)景越來(lái)越多,而目前比較常見(jiàn)的輪詢調(diào)用API接口的技術(shù)對(duì)雙方都造成了比較大的影響,近年來(lái),隨著發(fā)布/訂閱模式的成熟,開(kāi)始將該模式應(yīng)用到開(kāi)放平臺(tái)的實(shí)時(shí)數(shù)據(jù)傳遞中,形成了開(kāi)放平臺(tái)的消息系統(tǒng);此外,為了打破傳統(tǒng)系統(tǒng)架構(gòu)模式的束縛,可以采用新型的微服務(wù)架構(gòu)模式來(lái)構(gòu)建系統(tǒng)。為此,本論文針對(duì)現(xiàn)有開(kāi)放平臺(tái)內(nèi)部系統(tǒng)和第三方開(kāi)發(fā)者之間數(shù)據(jù)傳遞中存在的可靠性、實(shí)時(shí)性問(wèn)題,設(shè)計(jì)并實(shí)現(xiàn)了基于微服務(wù)架構(gòu)的開(kāi)放平臺(tái)消息系統(tǒng),主要工作如下:1)針對(duì)傳統(tǒng)單體架構(gòu)在部署和擴(kuò)展性上的缺陷,消息系統(tǒng)使用微服務(wù)架構(gòu)作為系統(tǒng)基礎(chǔ)開(kāi)發(fā)架構(gòu),將系統(tǒng)分為三個(gè)獨(dú)立的微服務(wù):主題微服務(wù)、Web Socket長(zhǎng)連接微服務(wù)、消息微服務(wù),并使用系統(tǒng)集成的分布式微服務(wù)框架進(jìn)行服務(wù)的注冊(cè)與調(diào)用,從而提高了系統(tǒng)的模塊化程度。2)為了實(shí)現(xiàn)內(nèi)部系統(tǒng)和第三方開(kāi)發(fā)者系統(tǒng)解耦,主題微服務(wù)使用發(fā)布/訂閱模式來(lái)實(shí)現(xiàn)可擴(kuò)展性和更加動(dòng)態(tài)的網(wǎng)絡(luò)拓?fù)?開(kāi)放平臺(tái)內(nèi)部系統(tǒng)作為生產(chǎn)者,向消息系統(tǒng)申請(qǐng)各自的主題,并將數(shù)據(jù)封裝成消息,發(fā)布到消息系統(tǒng)的對(duì)應(yīng)主題中,第三方開(kāi)發(fā)者作為消費(fèi)者,只需要通過(guò)簡(jiǎn)單的操作,就可以訂閱各自感興趣的主題。3)為了讓開(kāi)發(fā)者無(wú)需關(guān)心底層的數(shù)據(jù)通信,本論文使用長(zhǎng)連接微服務(wù)統(tǒng)一管理長(zhǎng)連接數(shù)據(jù)。針對(duì)長(zhǎng)連接微服務(wù),本論文解決了兩大難題:長(zhǎng)連接的;詈烷L(zhǎng)連接會(huì)話的共享,從而提高了系統(tǒng)的可靠性和服務(wù)能力。4)為了更好的對(duì)消息進(jìn)行全方位的跟蹤與處理,保證消息數(shù)據(jù)能夠?qū)崟r(shí)、可靠地傳遞給正確的第三方開(kāi)發(fā)者系統(tǒng),使用消息微服務(wù)對(duì)系統(tǒng)中的每一條消息進(jìn)行整個(gè)生命周期的管理,在消息微服務(wù)中,主要在三個(gè)方面進(jìn)行優(yōu)化和創(chuàng)新:全局唯一ID標(biāo)識(shí)算法優(yōu)化、消息的雙路由機(jī)制和消息的延時(shí)重發(fā),從而實(shí)現(xiàn)了消息的高效傳遞和全鏈路追蹤。在此基礎(chǔ)上,最終實(shí)現(xiàn)了基于微服務(wù)架構(gòu)的開(kāi)放平臺(tái)消息系統(tǒng),測(cè)試結(jié)果表明該系統(tǒng)可以實(shí)現(xiàn)開(kāi)放平臺(tái)內(nèi)部系統(tǒng)和第三方開(kāi)發(fā)者之間實(shí)時(shí)、高效的數(shù)據(jù)傳遞,同時(shí),消息傳遞的可靠性也能夠得到保證,另外,在并發(fā)的情況下,本論文中的消息系統(tǒng)也可以保證數(shù)據(jù)的一致性。
【學(xué)位授予單位】:東南大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位授予年份】:2018
【分類號(hào)】:TP311.52
【圖文】:
微服務(wù)原則圖

10圖 2-2 Pigeon 框架圖從圖 2-2 可以看到 Pigeon 框架包括四大組件,即服務(wù)提供方,服務(wù)調(diào)用方,注冊(cè)中心,掃描器。其中服務(wù)提供方是指分布式系統(tǒng)中的某個(gè)應(yīng)用集成了 Pigeon,并且通過(guò) Pigeon 將服務(wù)對(duì)外開(kāi)放,供內(nèi)部的其他應(yīng)用調(diào)用。服務(wù)調(diào)用方是指分布式系統(tǒng)中的某個(gè)應(yīng)用集成了Pigeon,,并且通過(guò) Pigeon 框架的配置發(fā)現(xiàn)系統(tǒng)中的其他服務(wù)并進(jìn)行遠(yuǎn)程調(diào)用。注冊(cè)中心是指對(duì)系統(tǒng)中的服務(wù)進(jìn)行統(tǒng)一管理的配置中心,Pigeon 框架中,使用 Zookeeper 作為注冊(cè)中心。掃描器是指系統(tǒng)中的一個(gè)后臺(tái)進(jìn)程,掃描系統(tǒng)中接入了 Pigeon
【參考文獻(xiàn)】
相關(guān)期刊論文 前1條
1 王晗;張玲;;面向互聯(lián)網(wǎng)開(kāi)放平臺(tái)保護(hù)用戶隱私的關(guān)聯(lián)規(guī)則挖掘算法[J];計(jì)算機(jī)應(yīng)用研究;2015年05期
相關(guān)碩士學(xué)位論文 前10條
1 陸文虎;基于微服務(wù)架構(gòu)的制造執(zhí)行系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D];浙江大學(xué);2018年
2 馬雄;基于微服務(wù)架構(gòu)的系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)[D];南京郵電大學(xué);2017年
3 李秋池;基于微服務(wù)架構(gòu)的促銷系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D];南京大學(xué);2017年
4 王權(quán);基于微信開(kāi)放平臺(tái)購(gòu)物中心的設(shè)計(jì)與實(shí)現(xiàn)[D];吉林大學(xué);2016年
5 唐文宇;面向SOA架構(gòu)微服務(wù)的安全系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D];南京大學(xué);2016年
6 李蘇璇;基于微服務(wù)架構(gòu)的SaaS應(yīng)用構(gòu)建方法研究[D];華南理工大學(xué);2016年
7 杜風(fēng)旭;基于WebSocket協(xié)議的在線聊天系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D];東南大學(xué);2016年
8 吳潤(rùn)周;消息系統(tǒng)研究與實(shí)現(xiàn)[D];華南理工大學(xué);2016年
9 徐亞兵;商業(yè)管理系統(tǒng)中分布式消息關(guān)鍵技術(shù)的研究與實(shí)現(xiàn)[D];華南理工大學(xué);2016年
10 邱杰泓;驢媽媽旅游網(wǎng)開(kāi)放平臺(tái)接口設(shè)計(jì)與實(shí)現(xiàn)[D];大連理工大學(xué);2015年
本文編號(hào):
2712442
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/2712442.html