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

基于Docker和插件的熱部署架構(gòu)在空管業(yè)務(wù)系統(tǒng)的設(shè)計(jì)

2019-11-18 07:04:46蔡建坤
電子技術(shù)與軟件工程 2019年18期
關(guān)鍵詞:功能系統(tǒng)

文/蔡建坤

1 引用

目前,中南地區(qū)空管業(yè)務(wù)系統(tǒng)由后臺服務(wù)和客戶端組成,在系統(tǒng)架構(gòu)上,一般采用傳統(tǒng)架構(gòu)。隨著空中交通管制理念的提升,管制部門對系統(tǒng)的依賴越來越大,對系統(tǒng)功能需求也越來越多,傳統(tǒng)的系統(tǒng)架構(gòu)在快速響應(yīng)管制需求及系統(tǒng)運(yùn)行要求上逐漸乏力。

在后臺服務(wù)端,限于項(xiàng)目范圍,一般只有一套資源支持業(yè)務(wù)系統(tǒng)的運(yùn)行。在系統(tǒng)上線后,當(dāng)出現(xiàn)用戶需求新增或者需求變更時(shí),需要在與生產(chǎn)環(huán)境相隔離的測試環(huán)境里面進(jìn)行測試驗(yàn)證后采用上線。由于測試環(huán)境與生產(chǎn)環(huán)境總存在一些差異,無法做到完全相同,因此雖新軟件在測試環(huán)境驗(yàn)證通過后,在生產(chǎn)環(huán)境仍存在不正常的情況。

在客戶端,傳統(tǒng)軟件架構(gòu)通過程序主體實(shí)現(xiàn),每一次的程序集成和代碼維護(hù)都需要重新編譯與鏈接源代碼和重新發(fā)布新軟件。在系統(tǒng)發(fā)布流程上,這種程序設(shè)計(jì)方式導(dǎo)致新軟件的發(fā)布都需要對該程序的所有功能進(jìn)行系統(tǒng)測試才能發(fā)布,給用戶和單位都造成時(shí)間及人力的浪費(fèi)。

因此,在現(xiàn)有運(yùn)行環(huán)境的約束下,研究一種支持相互隔離、穩(wěn)定可靠、部署簡便且可同時(shí)運(yùn)行多版本的系統(tǒng)架構(gòu)設(shè)計(jì)方案將可極大的降低功能上線失敗的風(fēng)險(xiǎn),且該架構(gòu)應(yīng)在穩(wěn)定安全的基礎(chǔ)上,可實(shí)現(xiàn)功能的快速交付。

2 Docker容器介紹

圖1:基于Docker容器的后端架構(gòu)示意圖

圖2:基于插件式軟件架構(gòu)的客戶端架構(gòu)示意圖

Docker項(xiàng)目的目標(biāo)是實(shí)現(xiàn)一次性構(gòu)建的輕量級系統(tǒng)虛擬化解決方案,重新定義了程序開發(fā),交付和部署過程。基于linux容器,Docker更具包容性,因此用戶無需關(guān)心容器的管理,從而使操作更容易。操作Docker容器用戶就像操作快速,輕量級的虛擬機(jī)一樣簡單。

除了運(yùn)行應(yīng)用程序之外,Docker容器基本上不消耗額外的系統(tǒng)資源,這使得應(yīng)用程序性能較高且系統(tǒng)開銷較小。Docker容器作為系統(tǒng)中的進(jìn)程存在,與正常進(jìn)程沒有區(qū)別。Docker在這些方面具有很大的優(yōu)勢。

(1)安全性:可實(shí)現(xiàn)空管業(yè)務(wù)系統(tǒng)各應(yīng)用之間不僅限于應(yīng)用層隔離,還獨(dú)立于底層基礎(chǔ)架構(gòu)。

(2)更快速的交付和部署:空管業(yè)務(wù)系統(tǒng)運(yùn)維人員可直接部署開發(fā)人員使用的容器。

(3)更輕松的遷移和擴(kuò)展:可在任意的平臺上運(yùn)行,亦可在任意不同平臺間遷移。

(4)更簡單的管理:對空管業(yè)務(wù)系統(tǒng)的修改都以增量的方式被分發(fā)和更新,自動(dòng)化且高效。

(5)多版本應(yīng)用管理:可同時(shí)支持多個(gè)版本在線。

3 插件式客戶端架構(gòu)介紹

插件的本質(zhì)在于不修改程序主體的情況下對軟件功能進(jìn)行擴(kuò)展與加強(qiáng),當(dāng)插件的接口公開后,系統(tǒng)可以通過實(shí)現(xiàn)插件來增加新的功能,也就是實(shí)現(xiàn)真正意義上的“即插即用”的軟件。

插件式客戶端架構(gòu)將要開發(fā)的目標(biāo)軟件劃分為兩部分,將軟件系統(tǒng)的核心或基礎(chǔ)作為一部分,將次要功能或易變功能作為另一部分,及為插件。插件完成的功能是擴(kuò)展和補(bǔ)充程序的主要功能。

采用插件式客戶端架構(gòu)的優(yōu)點(diǎn):

(1)實(shí)現(xiàn)空管業(yè)務(wù)系統(tǒng)軟件組件的“即插即用”;

(2)在二進(jìn)制級上集成軟件,減少空管業(yè)務(wù)系統(tǒng)軟件重新編譯與發(fā)布麻煩與時(shí)間;

(3)能夠很好實(shí)現(xiàn)空管業(yè)務(wù)系統(tǒng)軟件的分工開發(fā);

(4)可較好實(shí)現(xiàn)空管業(yè)務(wù)系統(tǒng)代碼隱藏,保護(hù)知識產(chǎn)權(quán)。

4 基于Docker和插件的熱部署架構(gòu)設(shè)計(jì)與實(shí)現(xiàn)

本節(jié)對后臺服務(wù)采用Docker架構(gòu)、客戶端采用插件式軟件架構(gòu)的設(shè)計(jì)方法進(jìn)行描述。

4.1 基于Docker架構(gòu)的后端服務(wù)設(shè)計(jì)

基于Docker架構(gòu)的后端服務(wù)由操作系統(tǒng)、Docker、二進(jìn)制文件/庫、功能服務(wù)組成。操作系統(tǒng)提供系統(tǒng)運(yùn)行的基礎(chǔ)平臺,Docker提供容器運(yùn)行所需運(yùn)行時(shí)庫,二進(jìn)制文件/庫則為功能服務(wù)提供業(yè)務(wù)功能運(yùn)行時(shí)庫,功能服務(wù)則為客戶端提供服務(wù)調(diào)用。

每個(gè)功能服務(wù)利用Docker容器進(jìn)行部署。如圖1所示。功能服務(wù)基于Docker層運(yùn)行,利用Docker技術(shù)提供的功能,支撐應(yīng)用的運(yùn)行。每個(gè)Docker容器提供一種功能服務(wù),例如數(shù)據(jù)庫Docker容器提供數(shù)據(jù)庫業(yè)務(wù),中間件Docker容器提供中間件業(yè)務(wù)。由于Docker容器的應(yīng)用隔離特點(diǎn),數(shù)據(jù)庫Docker容器和中間件Docker容器相互隔離,任一Docker容器的退出不影響其他容器。

4.2 基于插件式軟件架構(gòu)的客戶端設(shè)計(jì)

如圖2所示,基于插件式軟件架構(gòu)的客戶端程序由功能界面、程序主體、插件管理組件、功能插件組成。

功能界面主要完成功能展示功能,為用戶提供業(yè)務(wù)功能的界面入口。

程序主體主要完成業(yè)務(wù)系統(tǒng)的主要產(chǎn)品功能,這一部分的功能應(yīng)該是項(xiàng)目建設(shè)時(shí)便已經(jīng)明確的。

插件管理組件主要完成對插件的管理,提供加載、卸載、啟用、禁用等功能。

功能插件則為本系統(tǒng)的部分功能實(shí)現(xiàn),包括系統(tǒng)的擴(kuò)展功能、易變更的功能實(shí)現(xiàn)。

4.3 熱部署架構(gòu)的實(shí)現(xiàn)

熱部署架構(gòu)后端采用linux系統(tǒng)進(jìn)行部署,客戶端采用c#語言進(jìn)行開發(fā)。以下以中間件升級為例,對熱部署功能進(jìn)行說明。

開發(fā)人員在完成中間件的功能升級后,交付了一個(gè)中間件服務(wù)v2的Docker容器和一個(gè)調(diào)用中間件服務(wù)v2的中間件插件v2組件。由于采用Docker容器,中間件服務(wù)v2的Docker容器與原中間件服務(wù)v1的Docker容器相互獨(dú)立,互不影響。中間件插件也是。如圖3所示,按以下5個(gè)步驟便可實(shí)現(xiàn)在線熱部署升級:

(1)在原服務(wù)器內(nèi)運(yùn)行新Docker容器;

(2)將中間件插件v2組件拷貝到客戶端插件目錄下;

(3)通過插件管理組件禁用中間件插件v1;

(4)通過插件管理組件啟用中間件插件v2;

(5)重啟客戶端程序。

如遇問題需進(jìn)行回退時(shí),只需以下三個(gè)步驟:

(1)通過插件管理組件禁用中間件插件v2;

(2)通過插件管理組件啟用中間件插件v1;

(3)重啟客戶端程序。

5 結(jié)論

本文分析了Docker容器的關(guān)鍵技術(shù)和插件式客戶端架構(gòu),設(shè)計(jì)并實(shí)現(xiàn)了基于Docker和插件的熱部署架構(gòu)方案。本文提出的架構(gòu)方案切中空管業(yè)務(wù)系統(tǒng)面臨的實(shí)際問題,實(shí)現(xiàn)難度低,具有優(yōu)秀的安全性和擴(kuò)展性,還能實(shí)現(xiàn)業(yè)務(wù)的快速迭代,持續(xù)集成和部署。

猜你喜歡
功能系統(tǒng)
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機(jī)系統(tǒng)
ZC系列無人機(jī)遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統(tǒng)
半沸制皂系統(tǒng)(下)
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
關(guān)于非首都功能疏解的幾點(diǎn)思考
懷孕了,凝血功能怎么變?
媽媽寶寶(2017年2期)2017-02-21 01:21:24
“簡直”和“幾乎”的表達(dá)功能
主站蜘蛛池模板: 欧美97欧美综合色伦图| 99精品福利视频| 夜夜爽免费视频| 国产精欧美一区二区三区| 亚洲AV无码乱码在线观看裸奔| 伊人久久婷婷| 乱码国产乱码精品精在线播放| AV不卡在线永久免费观看| 亚洲综合18p| 欧洲欧美人成免费全部视频| 欧美精品综合视频一区二区| 国产高清免费午夜在线视频| 亚洲国产精品一区二区高清无码久久| 欧美日韩国产一级| 亚洲精品欧美重口| 国产精品香蕉| 国产精品无码AⅤ在线观看播放| 久久6免费视频| 亚洲中文字幕久久精品无码一区| 亚洲欧美一区二区三区蜜芽| 再看日本中文字幕在线观看| 国产精品太粉嫩高中在线观看| 亚洲精品视频网| 又黄又湿又爽的视频| 欧美精品不卡| 国内精品手机在线观看视频| 真实国产乱子伦视频| 国产最爽的乱婬视频国语对白| 亚洲美女AV免费一区| 精品人妻一区无码视频| 国产成人精品日本亚洲| 婷婷色狠狠干| 免费女人18毛片a级毛片视频| 亚洲日韩图片专区第1页| 青青青国产视频手机| 国产欧美日韩免费| 伊人久久婷婷五月综合97色| 精品人妻AV区| 青青青国产精品国产精品美女| 亚洲综合色婷婷中文字幕| 萌白酱国产一区二区| 亚洲精品动漫| 国产人在线成免费视频| 国产亚洲精品97在线观看| 中国精品自拍| 国产精品成人啪精品视频| 又爽又大又黄a级毛片在线视频 | 国产尹人香蕉综合在线电影| 在线日韩日本国产亚洲| 亚洲小视频网站| 日韩欧美国产中文| 欧美69视频在线| 91福利国产成人精品导航| 国产成人在线无码免费视频| 国产精品无码影视久久久久久久| 一级毛片免费不卡在线视频| 在线国产资源| 蜜芽国产尤物av尤物在线看| 视频二区亚洲精品| 国产精品xxx| 亚洲三级色| 九色在线视频导航91| 国产欧美视频一区二区三区| 精品国产Av电影无码久久久| 青青草国产在线视频| 国产91精品调教在线播放| 国产91九色在线播放| 久久a毛片| 成人一级免费视频| 亚洲午夜天堂| 国模在线视频一区二区三区| 男人天堂伊人网| 四虎影视无码永久免费观看| 欧美日韩亚洲国产| 国产成人永久免费视频| 亚洲第一成年人网站| 中文字幕 日韩 欧美| 日韩高清中文字幕| 国产成人免费观看在线视频| 麻豆国产在线观看一区二区| 91精品aⅴ无码中文字字幕蜜桃| 欧美色图第一页|