黃思萍
(廣西交通職業(yè)技術(shù)學(xué)院 交通信息工程學(xué)院,廣西 南寧 530023)
離港系統(tǒng)(Departure Control System,簡(jiǎn)稱DCS)又稱機(jī)場(chǎng)旅客處理系統(tǒng),如圖1,是機(jī)場(chǎng)為旅客辦理乘機(jī)手續(xù)的關(guān)鍵信息系統(tǒng)。它具有航班配載、飛行控制、旅客值機(jī)等功能。目前大多數(shù)機(jī)場(chǎng)升級(jí)方式為:維護(hù)人員到每個(gè)柜臺(tái)手工部署安裝包升級(jí)。大致的步驟為:①備份原有的離港前端軟件。②安裝新版本的離港前端軟件。③修改新版本軟件配置。④啟動(dòng)軟件,用測(cè)試航班測(cè)試若干基本功能(打印登機(jī)牌,行李條等)。
圖1 計(jì)算機(jī)離港控制系統(tǒng)
這就導(dǎo)致前端軟件升級(jí)工作量大,更新版本軟件需要幾個(gè)月甚至一年才能在全國(guó)所有機(jī)場(chǎng)升級(jí)。
鑒于此,本文研究設(shè)計(jì)了一套“離港前端軟件升級(jí)系統(tǒng)”實(shí)現(xiàn)全國(guó)所有機(jī)場(chǎng)離港前端軟件一夜升級(jí),要求不能對(duì)原離港前端有改動(dòng)。升級(jí)前只需將升級(jí)包放入服務(wù)器,從服務(wù)器下載到軟件,終止前端操作,開始將安裝包逐個(gè)遠(yuǎn)程發(fā)送到需要升級(jí)的系統(tǒng)。這比工程師攜帶安裝包到系統(tǒng)進(jìn)行安裝更方便、安全、省時(shí)、省力。
離港前端軟件升級(jí)系統(tǒng)使用了Vue 框架作為前端軟件升級(jí)系統(tǒng)管理界面的開發(fā)、Java 語(yǔ)言完成對(duì)jar 包升級(jí)軟件的編寫、后端服務(wù)器使用spring+SpringMVC+Mybatis(簡(jiǎn)稱SSM)框架進(jìn)行開發(fā),對(duì)每一臺(tái)安裝部署了jar 前端升級(jí)軟件的柜臺(tái)進(jìn)行一鍵升級(jí)、一鍵回滾、一鍵更換配置項(xiàng)等一系列的操作,還可以在線對(duì)柜臺(tái)的配置項(xiàng)進(jìn)行在線查看、在線編輯、一鍵保存替換等操作。從而實(shí)現(xiàn)了僅使用一套前端軟件升級(jí)系統(tǒng),就能控制全國(guó)機(jī)場(chǎng)柜臺(tái)離港前端軟件的功能。
離港前端軟件升級(jí)系統(tǒng)將從程序初始化、柜臺(tái)任務(wù)監(jiān)測(cè)、Token 密鑰監(jiān)測(cè)、程序運(yùn)行監(jiān)測(cè)等四個(gè)方面來(lái)進(jìn)行描述。如圖2所示。
圖2 離港前端軟件升級(jí)系統(tǒng)
1.2.1 程序初始化
包括創(chuàng)建文件目錄、創(chuàng)建用戶配置等程序初始化模塊的基本業(yè)務(wù)處理,首次登錄柜臺(tái)的時(shí)候會(huì)在C 盤創(chuàng)建lgqd 主目錄,在lgqd 目錄下創(chuàng)建備份目錄、文件下載目錄、軟件資源目錄以及用戶配置文件等基本文件。
1.2.2 柜臺(tái)任務(wù)監(jiān)測(cè)
包括對(duì)服務(wù)器讀取任務(wù)、處理任務(wù)及解析響應(yīng)數(shù)據(jù)等柜臺(tái)任務(wù)監(jiān)測(cè)模塊的基本業(yè)務(wù)處理,此模塊每隔3 秒會(huì)向服務(wù)器讀取一次柜臺(tái)任務(wù),讀取到任務(wù)后做出相應(yīng)的任務(wù)操作。如:
1.2.2.1 升級(jí)任務(wù)處理
①下載升級(jí)包,發(fā)送正在下載記錄。②終止正在運(yùn)行的離港前端軟件。③備份舊離港前端軟件后清空。④上傳備份到服務(wù)器,發(fā)送正在備份記錄。⑤安裝升級(jí)包。⑥安裝完成發(fā)送升級(jí)完成記錄,清空下載的升級(jí)包。⑦重新啟動(dòng)升級(jí)后的離港前端軟件。
1.2.2.2 更新配置任務(wù)處理
①下載新配置文件,發(fā)送正在下載記錄。②終止正在運(yùn)行的離港前端軟件。③備份舊配置文件。④上傳備份到服務(wù)器,發(fā)送正在備份記錄。⑤替換配置文件。⑥替換完成發(fā)送更新配置完成記錄,清空下載的配置文件。⑦重新啟動(dòng)更新配置后的離港前端軟件。
1.2.2.3 回滾配置任務(wù)處理
監(jiān)測(cè)到本地有備份:①終止正在運(yùn)行的離港前端軟件。②替換配置文件,發(fā)送正在回滾配置記錄。③替換完成,發(fā)送回滾完成記錄。④重新啟動(dòng)回滾配置后的離港前端軟件。
監(jiān)測(cè)到本地?zé)o備份:①下載服務(wù)器返回指定的配置文件備份,發(fā)送正在下載記錄。②終止正在運(yùn)行的離港前端軟件。③替換配置文件,發(fā)送正在回滾配置記錄。④替換完成,發(fā)送回滾完成記錄,清理下載的配置文件備份。⑤重新啟動(dòng)回滾配置后的離港前端軟件。
1.2.2.4 回滾軟件任務(wù)處理
監(jiān)測(cè)到本地有備份:①終止正在運(yùn)行的離港前端軟件。②清空舊離港前端軟件。③安裝離港前端軟件備份,發(fā)送正在回滾軟件記錄。④安裝完成發(fā)送回滾軟件完成記錄。⑤重新啟動(dòng)回滾后的離港前端軟件。
監(jiān)測(cè)到本地?zé)o備份:①下載服務(wù)器返回指定的軟件備份,發(fā)送正在下載記錄。②終止正在運(yùn)行的離港前端軟件。③清空舊離港前端軟件。④安裝離港前端軟件備份,發(fā)送正在回滾軟件記錄。⑤安裝完成發(fā)送回滾軟件完成記錄。⑥重新啟動(dòng)回滾后的離港前端軟件。
1.2.3 程序運(yùn)行監(jiān)測(cè)
主要包括對(duì)離港前端軟件運(yùn)行狀況進(jìn)行實(shí)時(shí)監(jiān)測(cè)的基本業(yè)務(wù)處理,其主要作用是能夠有效避免程序因多種無(wú)法預(yù)計(jì)因素導(dǎo)致程序關(guān)閉的風(fēng)險(xiǎn)。其主要功能如下:
監(jiān)測(cè)到離港前端軟件沒(méi)有運(yùn)行,自動(dòng)重啟離港前端軟件。
監(jiān)測(cè)到離港前端軟件正在運(yùn)行,不做處理。
1.2.4 Token 密鑰監(jiān)測(cè)功能
Token 密鑰監(jiān)測(cè)功能其最大作用是能夠保持柜臺(tái)與服務(wù)器之間的連接,無(wú)需頻繁訪問(wèn)數(shù)據(jù)庫(kù)進(jìn)行密碼校驗(yàn),減少數(shù)據(jù)庫(kù)的數(shù)據(jù)冗余,減輕數(shù)據(jù)庫(kù)訪問(wèn)壓力,提高數(shù)據(jù)庫(kù)執(zhí)行效率。主要包括對(duì)柜臺(tái)連接服務(wù)器驗(yàn)證的基本業(yè)務(wù)處理,其主要流程如下:①柜臺(tái)首次運(yùn)行輸入柜臺(tái)編號(hào)、密碼連接服務(wù)器。②柜臺(tái)編號(hào)、密碼驗(yàn)證成功,服務(wù)器為柜臺(tái)隨機(jī)創(chuàng)建一個(gè)Token 密鑰。③柜臺(tái)保存Token 到本地。④柜臺(tái)之后每次訪問(wèn)服務(wù)器都會(huì)帶上Token 密鑰。⑤服務(wù)器驗(yàn)證柜臺(tái)Token 密鑰。
Token 密鑰正確,繼續(xù)保持服務(wù)器連接。
Token 密鑰錯(cuò)誤,斷開服務(wù)器連接,并要求柜臺(tái)升級(jí)程序重新輸入柜臺(tái)編號(hào)、密碼連接服務(wù)器。
離港前端軟件升級(jí)系統(tǒng)從管理體制來(lái)劃分:超級(jí)管理員、公司管理員和機(jī)場(chǎng)管理員。超級(jí)管理員具有最高權(quán)限,負(fù)責(zé)所有功能模塊的管理和維護(hù);公司管理員能夠?qū)Σ榭垂酒煜赂鱾€(gè)機(jī)場(chǎng)信息;機(jī)場(chǎng)管理員只能查看自己的機(jī)場(chǎng)信息。
登錄成功后進(jìn)入了離港前端升級(jí)系統(tǒng)主頁(yè),默認(rèn)顯示登錄的用戶信息,在主頁(yè)中對(duì)當(dāng)前的數(shù)據(jù)進(jìn)行實(shí)時(shí)統(tǒng)計(jì),主頁(yè)中間位置統(tǒng)計(jì)了柜臺(tái)前端總數(shù)、柜臺(tái)前端在線總數(shù)、柜臺(tái)離線前端總數(shù)和離線率、任務(wù)總數(shù)和完成率,同時(shí)通過(guò)地圖展示目前存在的通信機(jī)場(chǎng)的位置,一目了然的看出全國(guó)前端與服務(wù)器的通信情況。左邊部分別對(duì)柜臺(tái)前端數(shù)量排行、任務(wù)完成情況排行的前十位進(jìn)行了統(tǒng)計(jì);右邊部分對(duì)柜臺(tái)和機(jī)場(chǎng)分布情況進(jìn)行了統(tǒng)計(jì)。
機(jī)場(chǎng)管理模塊主要包括公司管理、機(jī)場(chǎng)信息管理、用戶管理和柜臺(tái)管理等子模塊。全部模塊都可以批量導(dǎo)入導(dǎo)出Excel 數(shù)據(jù),提高工作效率。
①公司管理:對(duì)公司信息進(jìn)行基礎(chǔ)維護(hù)。②機(jī)場(chǎng)信息管理:對(duì)機(jī)場(chǎng)信息進(jìn)行基礎(chǔ)維護(hù)。③用戶管理:對(duì)系統(tǒng)的用戶信息進(jìn)行管理,包括添加、修改、刪除、查詢、啟用/禁用等操作。④柜臺(tái)管理:對(duì)機(jī)場(chǎng)信息進(jìn)行基礎(chǔ)維護(hù),還可以進(jìn)行升級(jí)、回滾、備份、編輯以及刪除等操作。
軟件管理模塊主要包括軟件信息管理、任務(wù)管理、操作記錄、備份管理、正在進(jìn)行的任務(wù)等子模塊。這些模塊都可以批量導(dǎo)入導(dǎo)出Excel 數(shù)據(jù),提高工作效率。
①軟件信息管理:對(duì)軟件名稱、版本號(hào)、上傳軟件文件信息等進(jìn)行基礎(chǔ)維護(hù)。②任務(wù)管理:可查看已經(jīng)添加的所有任務(wù),任務(wù)包含(軟件升級(jí)、配置更新、配置回滾、軟件回滾)四種任務(wù),并對(duì)任務(wù)進(jìn)行管理。可以選擇單個(gè)公司、單個(gè)機(jī)場(chǎng)、單個(gè)柜臺(tái)發(fā)批量布任務(wù),根據(jù)不同的需要去進(jìn)行任務(wù)調(diào)配。③操作記錄:可查看所有前端任務(wù)執(zhí)行過(guò)程的詳細(xì)日志,包含前端柜臺(tái)、時(shí)間、IP地址、操作內(nèi)容。④備份管理:可查看和下載前端柜臺(tái)上傳的云備份。⑤正在進(jìn)行的任務(wù):可查看目前正在運(yùn)行的各種任務(wù)和任務(wù)進(jìn)度,便于管理員查看任務(wù)進(jìn)行情況。
數(shù)據(jù)統(tǒng)計(jì)模塊主要包括柜臺(tái)在線情況統(tǒng)計(jì)和設(shè)備任務(wù)統(tǒng)計(jì)等子模塊。
①柜臺(tái)在線情況統(tǒng)計(jì):分為公司柜臺(tái)在線情況和機(jī)場(chǎng)柜臺(tái)在線情況等選項(xiàng)??筛鶕?jù)需要按公司查看每個(gè)公司的柜臺(tái)在線情況,也可以根據(jù)需要按機(jī)場(chǎng)查看每個(gè)機(jī)場(chǎng)的柜臺(tái)在線和離線情況。②設(shè)備任務(wù)統(tǒng)計(jì):分為公司柜臺(tái)任務(wù)完成情況和機(jī)場(chǎng)柜臺(tái)任務(wù)完成情況等選項(xiàng)??筛鶕?jù)需要按公司查看每個(gè)公司的柜臺(tái)任務(wù)完成情況,也可以根據(jù)需要按機(jī)場(chǎng)查看每一個(gè)機(jī)場(chǎng)的柜臺(tái)任務(wù)完成數(shù)量。
運(yùn)行前端監(jiān)測(cè)程序,首次運(yùn)行需要輸入柜臺(tái)號(hào)和對(duì)應(yīng)的密碼,首次登錄成功后,會(huì)下載對(duì)應(yīng)的軟件,并自動(dòng)運(yùn)行。當(dāng)服務(wù)器下發(fā)任務(wù)時(shí),監(jiān)測(cè)程序會(huì)自動(dòng)進(jìn)行下發(fā)任務(wù)。
本系統(tǒng)在保證機(jī)場(chǎng)業(yè)務(wù)運(yùn)行平穩(wěn)的基礎(chǔ)上,實(shí)現(xiàn)了對(duì)所有機(jī)場(chǎng)離港前端軟件的一鍵升級(jí),并具備回滾等功能,解決了機(jī)場(chǎng)前端軟件升級(jí)工作量大以及同步升級(jí)等痛點(diǎn),為航空企業(yè)的布局以及發(fā)展提供參考依據(jù),具有較大的實(shí)用價(jià)值。