郄小明 張建君

摘要:從移動終端特定場景下本地信息處理高效性、多樣性、安全性方面需求出發,在借鑒微服務架構設計思想基礎上,設計了面向終端本地應用的服務平臺。本文從終端服務平臺功能定位上展開論述,設計了終端服務平臺的架構,重點從OS平臺、服務運行環境和基礎微服務3個方面進行闡述。該服務平臺通過服務網關為應用提供統一的服務訪問接口,支持服務擴展,為終端應用開發提供支撐,提高了應用的開發效率。
關鍵詞:微服務;服務平臺;終端;信息處理
中圖分類號:TP311 ?文獻標識碼:A ? ? 文章編號:1007-9416(2020)06-0000-00
隨著智能終端及移動技術的快速發展,終端本地信息處理尤其針對特定場景的需求不斷增強[1]。為增強智能終端在特定場景下本地信息處理的高效性和多樣性,提高終端應用的開發效率,設計基于微服務架構的輕量化、可擴展的服務平臺,提供服務運行環境及基礎微服務。同時制定服務開發標準及交互接口規范,便于開發部署其他擴展服務。服務平臺為終端應用開發提供統一的服務訪問接口。
1 微服務架構
微服務架構作為一種全新的架構模式,通過微服務將一個功能復雜的單體應用分解成一組小的服務,不同服務直接可以相互協調、互相配合,共同完成一個復雜功能。微服務架構中單個服務都采用進程的方式獨立運行,針對具體業務構建相應微服務,不同微服務間交互開銷都是輕量級的。各微服務間均可以單獨部署,通過服務網關對外提供統一的服務接口[2]。
2 終端服務平臺定位
終端服務平臺是一個基礎的、用于衍生終端各應用的支撐平臺,是連接信息基礎設施與上層應用的橋梁。在改進和完善底層支撐與應用服務等方面,發揮“體系基座”和“服務中樞”的作用。
服務平臺是在操作系統和應用軟件之間構建的中間層,主要用來屏蔽不同終端設備、通信鏈路的差異,提供共性微服務和擴展微服務,便于上層應用的開發。
服務平臺遵循“高內聚、松耦合”的設計思想,通過基礎服務和微服務技術體制適應功能擴展和按需裁剪與重組。基于微服務的開發集成與無縫升級技術,將功能復雜、體積龐大的功能集合按照標準拆分為多個體積小巧、功能簡單的獨立功能模塊,實現軟件和功能的解耦。針對具體業務問題,遵循制定的微服務開發標準和接口規范,可快速開發相應服務模塊,并完成相應部署。
3 服務平臺架構設計
圖1 服務平臺架構設計圖
基于微服務的平臺框架,按照層次化設計思想,如圖1所示,系統自上向下劃分為應用層、平臺層、系統層和硬件層。應用層“以用戶為中心”,重點實現人機交互功能,完成各類應用界面設計和集成,可根據需要動態加載。平臺層是各類服務功能實現的主體,采用服務化設計,完成各類服務的數據采集、數據處理、數據存取等功能。根據內容的獨立性劃分不同的微服務,完成各自獨立的功能,微服務支持獨立部署,實現其自身功能。系統層為終端平臺運行的操作系統。硬件層包含終端運行的硬件及特定場景下接入的外圍設備。
平臺層按照層次劃分,可分為OS平臺、服務運行環境、基礎微服務和專用微服務四部分。
3.1 OS平臺
OS平臺是功能統一的軟件基礎平臺,屏蔽操作系統差異,采用跨平臺的軟件構建技術。OS平臺作為運行在操作系統上的平臺軟件,提供支持多種操作系統的統一抽象接口,為微服務提供獨立于特定操作系統的開發環境,降低操作系統差異對微服務開發和維護的影響,便于軟件研發人員專注在服務的總體設計和實現上。
OS平臺利用組件技術提供任務管理、定時器管理、消息隊列、內存管理、日志管理、數據緩沖區管理、文件、字符串操作、信號量和互斥等基礎功能,為服務開發提供統一穩定的環境,上層服務可直接使用平臺抽象接口,開發跨平臺的微服務[3]。
3.2 服務運行環境
服務運行環境作為服務平臺的基礎,提供各微服務的統一管理,保障微服務間的互相協作,是服務平臺實現的技術支撐[4],主要包括以下幾部分。(1)注冊中心,采用集中注冊管理機制,接收微服務傳遞來的注冊信息,在本地哈希列表進行存儲[5];通過服務刷新機制與各微服務進行周期性的交互,以便定時查看各微服務運行狀態;在微服務狀態異常的情況下,可重啟微服務。(2)服務網關,應用需通過服務網關進行服務平臺的訪問,是服務平臺的統一入口,各微服務提供的能力接口均通過服務網關對外提供。網關實現對請求的預處理、攔截,具備協議轉換、異常處理等功能;它使應用與服務之間的耦合解除,完成前后臺分離,增強了系統的安全性。(3)服務容錯,構建故障隔離、斷路器等容錯與修復機制,避免單個服務不可用時,故障蔓延,并造成整個平臺不可用的風險[6]。(4)安全認證,用于調用服務應用的身份驗證、授權和訪問控制。管理和控制上層應用對服務平臺的訪問過程,防止被非授權應用訪問。安全認證截獲應用的服務請求,從中提取應用信息、認證信息等,通過調用內部的安全和策略機制對服務請求認證授權,只允許合法應用且滿足策略規則的請求通過,阻止非法和越權的服務請求。
3.3 基礎微服務
基礎微服務為上層應用軟件提供部分核心、共性基礎功能,支撐專業應用擴展[7]。主要包括統一認證、設備管理、數據加密、數據存儲、權限管理等微服務。
(1)統一認證,針對終端服務平臺的特定應用場景,對使用終端的用戶進行身份認證,防止未經許可的用戶使用終端。(2)設備管理,終端服務平臺的需求,終端需連接多種外圍設備,同時支持動態擴展。設備管理微服務完成外圍設備的動態接入及狀態維護,為應用提供設備列表、狀態管理、操作管理等功能。(3)數據加密,保障終端運行及通信時的數據安全,設計通用數據加密解密服務,對外提供加密和解密接口,為需要在網絡中傳輸及本地存儲的數據提供加密解密支撐。(4)數據存儲,該服務提供輕量化的數據存儲能力[8],包括輕量化文件存儲和Sqlite數據存儲,對外提供增刪改查等靈活操作的服務接口。服務和應用開發者可通過調用相應接口完成本地數據存儲。(5)權限管理,特定應用場景下,終端用戶是各級網絡的管理者,也是各種應用命令的執行者,各級用戶有不同的任務與網絡需求。為了更有效地進行網絡組織運用、防止下級用戶的越級操作或誤操作,對用戶的用戶等級、拓撲查看權限等使用權限進行統一管理。
3.4 專用微服務
在遵循服務平臺制定的開發標準和接口規范基礎上,利用OS平臺和基礎微服務提供接口,開發者可根據需求開發各種專用微服務,為終端提供高效、多樣的服務。
4結語
目前主流的微服務架構大多應用在服務器后臺,通過網絡為前臺應用提供服務。本文設計了采用微服務架構的終端服務平臺,該平臺為終端提供多種基礎微服務,支持終端本地多樣信息的處理和安全支撐,同時具備服務擴展的能力。平臺對外通過服務網關提供統一的服務調用,方便應用調用各種服務接口,屏蔽了應用與內部服務間的關聯。該服務平臺在終端領域有較好的實用價值和應用前景。
參考文獻
[1]張向祺.基于微服務的企業移動辦公平臺規劃設計[J].信息技術與標準化,2016(3):71-74.
[2]曹宏宇,胡恒.基于微服務架構的智能終端軟件架構探討[J].科技創新與應用,2019(20):17-19.
[3]羅有平,汲錫林.統一通信客戶端軟件架構研究[J].無線電工程,2018,48(4):253-256.
[4]付朋輝,呂鋒,王艷.基于微服務架構的平臺設計與應用[J].金融電子化,2017(6):72-73.
[5]耿登田,高瞻.基于SOA的通信網絡服務技術研究[J].數字技術與應用,2015(4):30-32.
[6]晉榮,王瑞,程洪閃.基于微服務架構的綜合運維系統設計[J].計算機與網絡,2019(13):56-58.
[7]余和劍.基于微服務架構的信息資源服務平臺構建研究[J].科技管理研究,2019(13):212-126.
[8]楊俊偉,紀鑫,胡強新.基于微服務架構的電力云服務平臺[J].電力信息與通信技術,2017,15(1):8-11.
收稿日期:2020-04-25
作者簡介:郄小明(1987—),男,河北石家莊人,碩士,工程師,研究方向:通信系統、終端技術。
通訊作者:張建君(1983—),男,河北邢臺人,碩士,高級工程師,研究方向:通信網絡與統一通信技術。