何振邦,徐延軍
(1. 青海省交通控股集團(tuán)有限公司, 西寧 810000;2. 上海交通大學(xué) 交通運(yùn)輸工程系, 上海 200240;3. 上海船舶運(yùn)輸科學(xué)研究所有限公司, 上海 200135; 4. 中遠(yuǎn)海運(yùn)科技股份有限公司, 上海 200135)
為加快交通強(qiáng)國(guó)建設(shè),構(gòu)建現(xiàn)代綜合交通運(yùn)輸體系,國(guó)務(wù)院于2022年初印發(fā)了《“十四五”現(xiàn)代綜合交通運(yùn)輸體系發(fā)展規(guī)劃》(以下簡(jiǎn)稱《規(guī)劃》)?!兑?guī)劃》提出:創(chuàng)新驅(qū)動(dòng)、深化改革是現(xiàn)代綜合交通運(yùn)輸體系發(fā)展規(guī)劃的基本原則;提升交通運(yùn)輸數(shù)字化、一體化,推動(dòng)交通運(yùn)輸市場(chǎng)統(tǒng)一開(kāi)放是發(fā)展目標(biāo)。
目前國(guó)內(nèi)公路業(yè)務(wù)中涉及的建設(shè)、管理、養(yǎng)護(hù)、運(yùn)營(yíng)和安全(以下簡(jiǎn)稱“建管養(yǎng)運(yùn)安”)系統(tǒng)[1]大多是相互孤立的,要實(shí)現(xiàn)交通運(yùn)輸市場(chǎng)統(tǒng)一開(kāi)放,必須實(shí)現(xiàn)企業(yè)內(nèi)部各系統(tǒng)之間的數(shù)據(jù)共享和與外部系統(tǒng)的數(shù)據(jù)共享,構(gòu)建企業(yè)從內(nèi)部到外部的開(kāi)放生態(tài);同時(shí),目前高速公路全壽命周期內(nèi)的建管養(yǎng)運(yùn)安一體化研究相對(duì)缺乏。隨著數(shù)字化轉(zhuǎn)型的不斷推進(jìn),很多企業(yè)都已構(gòu)建數(shù)據(jù)中臺(tái),通過(guò)對(duì)內(nèi)部數(shù)據(jù)進(jìn)行采集、計(jì)算、存儲(chǔ)和加工,已形成一些能支撐決策的有價(jià)值的數(shù)據(jù),如何與外部系統(tǒng)共享這些數(shù)據(jù),實(shí)現(xiàn)與外部企業(yè)互聯(lián),并產(chǎn)生商業(yè)價(jià)值,是企業(yè)實(shí)現(xiàn)數(shù)字化轉(zhuǎn)型必須思考的問(wèn)題。
若要與外部系統(tǒng)進(jìn)行數(shù)據(jù)共享,不僅要考慮數(shù)據(jù)連通問(wèn)題,而且要考慮經(jīng)濟(jì)收益、外部用戶管理、安全、運(yùn)營(yíng)和維護(hù)等因素。企業(yè)數(shù)據(jù)中臺(tái)的主要作用是對(duì)數(shù)據(jù)進(jìn)行采集和處理,若要與外部系統(tǒng)共享數(shù)據(jù),需建立一個(gè)獨(dú)立的一體化平臺(tái)[2],即資源能力開(kāi)放平臺(tái)。
本文結(jié)合已有的業(yè)務(wù)信息系統(tǒng),設(shè)計(jì)開(kāi)發(fā)一套適用于高速公路管養(yǎng)企業(yè)的資源能力開(kāi)放平臺(tái),構(gòu)建高速公路資源服務(wù)目錄,提升企業(yè)對(duì)內(nèi)、對(duì)外的數(shù)據(jù)互聯(lián)和共享能力。
資源能力開(kāi)放平臺(tái)是指接口服務(wù)開(kāi)放平臺(tái),其以服務(wù)的方式開(kāi)放業(yè)務(wù)或數(shù)據(jù)能力,并提供對(duì)服務(wù)的全生命周期管理,以及對(duì)平臺(tái)的運(yùn)營(yíng)和維護(hù)管理。
資源能力開(kāi)放平臺(tái)的核心是API(Application Programming Interface)網(wǎng)關(guān),這是所有接口服務(wù)注冊(cè)、服務(wù)請(qǐng)求的統(tǒng)一入口,是面向接口服務(wù)、串行集中式的強(qiáng)管控服務(wù)[3]。資源能力開(kāi)放平臺(tái)能按統(tǒng)一的標(biāo)準(zhǔn)對(duì)現(xiàn)有的業(yè)務(wù)信息系統(tǒng)或數(shù)據(jù)中臺(tái)的接口服務(wù)進(jìn)行編排管理,統(tǒng)一對(duì)外開(kāi)放。
資源能力開(kāi)放平臺(tái)能快速整合應(yīng)用和服務(wù),低成本、高效率地創(chuàng)建豐富多樣的業(yè)務(wù)場(chǎng)景,使企業(yè)系統(tǒng)對(duì)外服務(wù)更便捷[4]??傮w來(lái)說(shuō),資源能力開(kāi)放平臺(tái)主要有以下優(yōu)點(diǎn):
1) 對(duì)接口服務(wù)統(tǒng)一管理,統(tǒng)一對(duì)外開(kāi)放;
2) 方便進(jìn)行功能擴(kuò)展,兼容多個(gè)系統(tǒng);
3) 能控制訪問(wèn)流量等。
目前知名的公有云開(kāi)放平臺(tái)主要有阿里云API網(wǎng)關(guān)、京東云API網(wǎng)關(guān)和Amazon API Gateway等。這些資源能力開(kāi)放平臺(tái)支持權(quán)限認(rèn)證和流量控制,能幫助客戶將服務(wù)和數(shù)據(jù)開(kāi)放給外部系統(tǒng),也有完整的生命周期管理和版本管理等功能,但高速公路管養(yǎng)企業(yè)使用的是專用網(wǎng)絡(luò)(收費(fèi)專網(wǎng)和監(jiān)控專網(wǎng)等),采用公有云開(kāi)放平臺(tái)需考慮安全問(wèn)題,并進(jìn)行大規(guī)模的業(yè)務(wù)信息系統(tǒng)改造。因此,高速公路管養(yǎng)企業(yè)通常會(huì)基于自建的私有云平臺(tái)設(shè)計(jì)開(kāi)發(fā)資源能力開(kāi)放平臺(tái)。
考慮到成本和私有化部署等因素,選擇基于WSO2 API Manager開(kāi)源組件構(gòu)建資源能力開(kāi)放平臺(tái),并通過(guò)開(kāi)發(fā)服務(wù)適配模塊與現(xiàn)有的信息系統(tǒng)和數(shù)據(jù)中臺(tái)融合,結(jié)合高速公路相關(guān)業(yè)務(wù)構(gòu)建資源服務(wù)目錄,從而得到集成API網(wǎng)關(guān)、用戶管理、服務(wù)發(fā)布工具、API開(kāi)發(fā)者門戶、安全管理[5]、流量控制和資源服務(wù)目錄等功能的高速公路建管養(yǎng)運(yùn)安一體化資源能力開(kāi)放平臺(tái)。該資源能力開(kāi)放平臺(tái)總體架構(gòu)見(jiàn)圖1。
圖1 資源能力開(kāi)放平臺(tái)總體架構(gòu)
API網(wǎng)關(guān)是資源能力開(kāi)放平臺(tái)的大腦,是平臺(tái)運(yùn)轉(zhuǎn)的樞紐,所有服務(wù)的注冊(cè)、調(diào)用、轉(zhuǎn)發(fā)、安全驗(yàn)證和流量控制等都通過(guò)API網(wǎng)關(guān)完成。
服務(wù)在創(chuàng)建之后會(huì)部署到API網(wǎng)關(guān)中,只有如此才會(huì)被調(diào)用者發(fā)現(xiàn)。當(dāng)調(diào)用者請(qǐng)求服務(wù)時(shí),會(huì)先將請(qǐng)求發(fā)送給API網(wǎng)關(guān),API網(wǎng)關(guān)根據(jù)安全性策略和流量控制策略調(diào)用安全管理和流量控制模塊對(duì)請(qǐng)求的合規(guī)性進(jìn)行驗(yàn)證,若符合通行條件,則會(huì)把請(qǐng)求轉(zhuǎn)發(fā)到對(duì)應(yīng)的服務(wù)上。每次請(qǐng)求都會(huì)在通過(guò)API網(wǎng)關(guān)時(shí)被記錄,基于這些請(qǐng)求的數(shù)據(jù)可供調(diào)用分析使用。
管理平臺(tái)主要由服務(wù)發(fā)布工具、API開(kāi)發(fā)者門戶和用戶管理構(gòu)成,其架構(gòu)見(jiàn)圖2。
圖2 管理平臺(tái)架構(gòu)
3.3.1 服務(wù)發(fā)布工具
服務(wù)發(fā)布工具是服務(wù)開(kāi)發(fā)者進(jìn)行服務(wù)開(kāi)發(fā)、記錄、保護(hù)、測(cè)試和管理的工具。服務(wù)在創(chuàng)建和配置完成之后可保存并發(fā)布,只有經(jīng)過(guò)發(fā)布的服務(wù)才能在開(kāi)發(fā)者門戶中被訂閱和調(diào)用。
3.3.2 API開(kāi)發(fā)者門戶
API開(kāi)發(fā)者門戶是為服務(wù)調(diào)用者提供服務(wù)的模塊,可通過(guò)開(kāi)發(fā)者門戶查看服務(wù)的信息,包括接口的描述、參數(shù)和調(diào)用的軟件開(kāi)發(fā)工具包(Software Development Kit, SDK)等,開(kāi)發(fā)者可通過(guò)該模塊對(duì)相關(guān)信息進(jìn)行在線調(diào)用和測(cè)試。
3.3.3 用戶管理
用戶管理包括外部用戶自助注冊(cè)申請(qǐng)、審核和權(quán)限分配等。無(wú)論是服務(wù)提供者還是服務(wù)調(diào)用者,都可注冊(cè)賬號(hào),其中:服務(wù)提供者可通過(guò)服務(wù)發(fā)布工具創(chuàng)建資源服務(wù)目錄并發(fā)布服務(wù);服務(wù)調(diào)用者可通過(guò)開(kāi)發(fā)者門戶訂閱已部署的服務(wù),進(jìn)行測(cè)試和調(diào)用。
控制平臺(tái)主要由安全管理模塊和流量控制模塊構(gòu)成,其架構(gòu)見(jiàn)圖3。
圖3 控制平臺(tái)架構(gòu)
3.4.1 安全管理
安全管理主要是指鑒權(quán)認(rèn)證[6],該模塊提供令牌生成服務(wù),服務(wù)調(diào)用者可調(diào)用該服務(wù)獲得通行令牌,也可通過(guò)開(kāi)發(fā)者門戶生成OAuth 2.0訪問(wèn)令牌,API網(wǎng)關(guān)通過(guò)驗(yàn)證令牌的真實(shí)性保證調(diào)用的安全性。
3.4.2 流量控制
流量控制模塊主要用來(lái)監(jiān)管服務(wù)調(diào)用流量,可針對(duì)不同的調(diào)用者或不同的服務(wù)制訂不同的流量控制策略。例如,可限制某項(xiàng)服務(wù)每分鐘、每月、每年的調(diào)用次數(shù),也可限制某個(gè)用戶的總調(diào)用次數(shù),根據(jù)不同的場(chǎng)景選擇不同的策略。
此次平臺(tái)構(gòu)建從高速公路行業(yè)數(shù)字化全生命周期出發(fā),將平臺(tái)劃分為6個(gè)一級(jí)目錄(分別是通用數(shù)據(jù)、公路建設(shè)、公路管理、公路養(yǎng)護(hù)、公路運(yùn)營(yíng)和公路安全)、20個(gè)二級(jí)目錄和55個(gè)三級(jí)目錄,共包含209個(gè)接口服務(wù),后續(xù)可根據(jù)規(guī)劃進(jìn)行升級(jí)擴(kuò)展。
目錄分類及提供的API服務(wù)可參考高速公路資源能力開(kāi)放平臺(tái)資源服務(wù)目錄,見(jiàn)表1。
表1 (續(xù))
資源服務(wù)目錄是在開(kāi)發(fā)者工具上按生命周期的管理流程統(tǒng)一構(gòu)建的。但是,真正的服務(wù)并不是完全新建的,而是充分利用現(xiàn)有的服務(wù)資源,比如已存在的業(yè)務(wù)信息系統(tǒng)和數(shù)據(jù)中臺(tái)等。
由于現(xiàn)有的信息系統(tǒng)不是同一時(shí)期建設(shè)的,因此采用的框架有多種,采用的技術(shù)有所不同,對(duì)外開(kāi)放時(shí)調(diào)用的方式也不相同,這給調(diào)用者帶來(lái)了麻煩,需采用多種調(diào)用方式才能完成對(duì)多項(xiàng)服務(wù)的請(qǐng)求。為解決該問(wèn)題,資源能力開(kāi)放平臺(tái)統(tǒng)一采用RESTful調(diào)用方式對(duì)外開(kāi)放,規(guī)范服務(wù)調(diào)用方式和服務(wù)標(biāo)準(zhǔn)。
對(duì)于已有的RESTful類型的服務(wù),API網(wǎng)關(guān)可直接跳轉(zhuǎn)到對(duì)應(yīng)的服務(wù);對(duì)于不是該類型的服務(wù),開(kāi)發(fā)一個(gè)針對(duì)該類型服務(wù)的適配模塊,所有請(qǐng)求到API網(wǎng)關(guān)之后都會(huì)先轉(zhuǎn)發(fā)到該適配模塊,再跳轉(zhuǎn)到對(duì)應(yīng)的服務(wù),這樣就可極大地簡(jiǎn)化調(diào)用者的開(kāi)發(fā)工作。
在測(cè)試過(guò)程中,該模塊是以單個(gè)微服務(wù)的方式部署的,當(dāng)遇到大批量請(qǐng)求時(shí)會(huì)造成通道阻塞。為解決該問(wèn)題,將所有適配模塊添加到docker容器[7]中進(jìn)行集群部署,服務(wù)的負(fù)載會(huì)根據(jù)請(qǐng)求量的多少自動(dòng)進(jìn)行調(diào)整。
后續(xù)平臺(tái)優(yōu)化的重點(diǎn)是在面向海量用戶的服務(wù)調(diào)用請(qǐng)求時(shí),實(shí)現(xiàn)軟硬件資源的彈性伸縮和負(fù)載的動(dòng)態(tài)調(diào)整。
目前該資源能力開(kāi)放平臺(tái)已實(shí)現(xiàn)與青海省高速公路全路網(wǎng)綜合集中監(jiān)控管理平臺(tái)的無(wú)縫對(duì)接和融合,在完成青海省高速公路運(yùn)營(yíng)管理有限公司與公安、交警和路政等單位之間的數(shù)據(jù)交換和共享方面發(fā)揮了積極作用;同時(shí),依托該平臺(tái),正在實(shí)現(xiàn)面向公眾的高速數(shù)據(jù)服務(wù)增值業(yè)務(wù)拓展應(yīng)用。隨著研究的不斷深入,接入的業(yè)務(wù)信息系統(tǒng)和數(shù)據(jù)不斷增加,該平臺(tái)提供的資源服務(wù)目錄會(huì)越來(lái)越豐富,平臺(tái)的作用會(huì)越來(lái)越明顯。