





摘要:隨著RPA(Robotic Process Automation)在企業(yè)中的部署,帶來的一個(gè)問題是異構(gòu)的RPA需要進(jìn)行綜合管理。微服務(wù)架構(gòu)將系統(tǒng)中的各RPA服務(wù)拆解為獨(dú)立可運(yùn)行的單元,文章基于微服務(wù)框架,設(shè)計(jì)RPA綜合管理平臺(tái)的架構(gòu)。通過微服務(wù),可以讓不同廠商的RPA進(jìn)行相互通信,訪問統(tǒng)一的數(shù)據(jù)管理層,既有助于企業(yè)采購不同的RPA滿足多樣化的業(yè)務(wù)需求,也有助于企業(yè)采用統(tǒng)一的管理方式,提高企業(yè)中RPA的資源調(diào)度效率。
關(guān)鍵詞:流程自動(dòng)化;微服務(wù)架構(gòu);綜合管理平臺(tái)
doi:10.3969/J.ISSN.1672-7274.2023.02.014
中圖分類號(hào):TP 311.5" " " " " " " "文獻(xiàn)標(biāo)示碼:A" " " " " " " "文章編碼:1672-7274(2023)02-00-03
Research on RPA Integrated Management Platform Based on Microservice Technology
XIONG Qiang
(CNOOC Information Technology Co., Ltd., Shenzhen 518000, China)
Abstract: With the deployment of RPA (Robotic Process Automation, RPA) in enterprises, a problem arises that heterogeneous RPAs need to be managed comprehensively. Microservice architecture decomposes RPA services in the system into independent and operable units. This paper designs the architecture of RPA integrated management platform based on microservice framework. Through microservices, RPAs from different manufacturers can communicate with each other and access a unified data management layer, which not only helps enterprises purchase different RPAs to meet diversified business needs, but also helps enterprises adopt a unified management method and improve the resource scheduling efficiency of RPAs in enterprises.
Key words: process automation; microservice architecture; integrated management platform
1" 研究背景
目前RPA被用于各類型企業(yè)的業(yè)務(wù)流程自動(dòng)化處理中。通過RPA,可以有大大降低企業(yè)中各類重復(fù)業(yè)務(wù)導(dǎo)致的效率較低問題,解決各類煩瑣的、需要大量人工完成的工作。通過RPA可以降低企業(yè)的運(yùn)營成本,提高企業(yè)的管理效率。隨著RPA在企業(yè)中的部署,帶來的一個(gè)問題是異構(gòu)的RPA需要進(jìn)行綜合管理。比如,不同業(yè)務(wù)部門可能分別采用來自UiBot和華為WeAutomate兩個(gè)廠商的RPA產(chǎn)品,兩者之間不太兼容。企業(yè)為統(tǒng)一不同業(yè)務(wù)部門的RPA的管理、調(diào)度、監(jiān)控等,需要構(gòu)建一定的標(biāo)準(zhǔn),用于協(xié)同不同的RPA。其中,微服務(wù)技術(shù)可用于解決異構(gòu)的RPA之間的通信協(xié)議等問題?;谖⒎?wù)架構(gòu)對(duì)異構(gòu)的RPA進(jìn)行綜合管理具有獨(dú)立性、協(xié)調(diào)性、輕量通信、擴(kuò)展性能良好等優(yōu)點(diǎn),本文對(duì)此進(jìn)行研究。
2" 文獻(xiàn)綜述
在異構(gòu)系統(tǒng)的統(tǒng)一管理方面,微服務(wù)架構(gòu)是一種性能良好的選擇方案,受到多方的重視。其中,Gkoulis等構(gòu)建了一種基于事件驅(qū)動(dòng)的微服務(wù)架構(gòu)系統(tǒng),通過將各項(xiàng)事件封裝為微服務(wù),提高了系統(tǒng)的性能[1]。Henning等對(duì)比不同的系統(tǒng)架構(gòu)設(shè)計(jì)方案后認(rèn)為,微服務(wù)能夠有效解決異構(gòu)系統(tǒng)的通信問題,并且具有良好的擴(kuò)展性[2]。Whaiduzzaman基于微服務(wù)架構(gòu)構(gòu)建解決異構(gòu)設(shè)備的物聯(lián)網(wǎng)系統(tǒng),通過微服務(wù)解決不同設(shè)備之間的標(biāo)準(zhǔn)協(xié)議問題,取得良好的效果[3]。
我國學(xué)者肖勇等基于微服務(wù)架構(gòu)對(duì)網(wǎng)級(jí)能量數(shù)據(jù)平臺(tái)進(jìn)行改造,通過微服務(wù)提高了系統(tǒng)的擴(kuò)展性,降低了不同組件的耦合性[4]。劉政等采用謂詞邏輯對(duì)微服務(wù)架構(gòu)進(jìn)行形式化建模,通過形式化推論不同微服務(wù)的邏輯關(guān)系,保障系統(tǒng)的正確性[5]。崔海濤等開發(fā)彈性評(píng)估方法,用于評(píng)估微服務(wù)架構(gòu)下開發(fā)活動(dòng)的自適應(yīng)性。通過對(duì)原有系統(tǒng)的改造,引入微服務(wù)以及DevOps等方式,提高了企業(yè)組織系統(tǒng)的彈性和適應(yīng)性[6]。
3" RPA綜合管理平臺(tái)微服務(wù)架構(gòu)設(shè)計(jì)
本文中設(shè)計(jì)的RPA綜合管理平臺(tái)微服務(wù)架構(gòu)如圖1所示。
為了將RPA綜合管理平臺(tái)微服務(wù)化,首先對(duì)RPA綜合管理平臺(tái)的各項(xiàng)服務(wù)功能進(jìn)行劃分。劃分的目的是形成具有一定獨(dú)立性的服務(wù),比如,RPA的任務(wù)查詢、RPA任務(wù)協(xié)調(diào)、RPA任務(wù)調(diào)度、RPA任務(wù)監(jiān)控以及RPA數(shù)據(jù)處理等不同的應(yīng)用服務(wù)。通過將各項(xiàng)服務(wù)功能劃分為獨(dú)立的業(yè)務(wù)單元,使得各業(yè)務(wù)單元可以進(jìn)行獨(dú)立的開發(fā)與部署。同時(shí),從數(shù)據(jù)庫方面,不同的業(yè)務(wù)單元訪問的數(shù)據(jù)庫可在物理或者邏輯上進(jìn)行隔離,保障系統(tǒng)在服務(wù)層具有兼容性。除各業(yè)務(wù)單元以外,微服務(wù)架構(gòu)還需要完成服務(wù)的組成、發(fā)現(xiàn)、分發(fā)等機(jī)制,如圖2所示,該圖展示了RPA綜合管理平臺(tái)微服務(wù)架構(gòu)基本流程。
在實(shí)際使用RPA綜合管理平臺(tái)中各項(xiàng)微服務(wù)時(shí),需要基于Eureka對(duì)服務(wù)進(jìn)行注冊,只有注冊過的微服務(wù)才能被合法地調(diào)用。當(dāng)發(fā)起微服務(wù)訪問申請(qǐng)時(shí),由網(wǎng)關(guān)Zuui對(duì)微服務(wù)進(jìn)行尋址,并且通過在注冊中心查詢對(duì)應(yīng)的微服務(wù)獲得訪問的地址。如果系統(tǒng)中未注冊該微服務(wù),則返回服務(wù)不可用信息。否則,網(wǎng)關(guān)Zuui會(huì)進(jìn)一步核實(shí)調(diào)用者的權(quán)限以及微服務(wù)允許的權(quán)限。如果調(diào)用服務(wù)的用戶不具有訪問權(quán)限,則網(wǎng)關(guān)核對(duì)權(quán)限失敗,返回不可調(diào)用信息。通過權(quán)限認(rèn)證后,Zuui通過負(fù)載均衡等處理,對(duì)服務(wù)進(jìn)行轉(zhuǎn)發(fā),調(diào)用真正的業(yè)務(wù)處理單元,并將調(diào)用結(jié)果經(jīng)過Eureka以及Zuui網(wǎng)關(guān)返回給微服務(wù)的請(qǐng)求端。
同時(shí),為了保障RPA綜合管理平臺(tái)各微服務(wù)的正確性,本系統(tǒng)基于語義分析,對(duì)微服務(wù)的正確性進(jìn)行驗(yàn)證。其中,可以采用表示RPA綜合管理平臺(tái)中各項(xiàng)微服務(wù),n代表微服務(wù)的名稱。分別代表該微服務(wù)的輸入數(shù)據(jù)集合、輸出值集合、滿足的前置條件集合以及產(chǎn)生的效果集合。比如RPA中財(cái)務(wù)數(shù)據(jù)資源查詢服務(wù)可以采用公式(1)進(jìn)行表示。
該服務(wù)根據(jù)相關(guān)ID查詢對(duì)應(yīng)的財(cái)務(wù)指標(biāo),輸入為指標(biāo)ID,輸出為具體的財(cái)務(wù)指標(biāo)值,其前置條件為該ID對(duì)應(yīng)的指標(biāo)存在并向數(shù)據(jù)庫申請(qǐng)?jiān)L問權(quán)限。通過定義不同的微服務(wù),采用匹配度操作,對(duì)服務(wù)在RPA系統(tǒng)中的匹配度進(jìn)行形式化定義,如公式(2)所示。
然后求得概念矩陣,最終求得不同服務(wù)之間的匹配關(guān)系,如公式(4)所示。
最后,通過對(duì)RPA綜合管理平臺(tái)中不同的微服務(wù)建立其功能與操作的語義表達(dá),可以從數(shù)學(xué)上驗(yàn)證RPA綜合管理平臺(tái)中各個(gè)RPA微服務(wù)具有一致性,并且不存在邏輯沖突,保障RPA綜合管理平臺(tái)的正確性。
4" RPA綜合管理平臺(tái)微服務(wù)架構(gòu)實(shí)現(xiàn)
在具體構(gòu)建RPA綜合管理平臺(tái)時(shí),可選擇Springboot、SpringCloud、Redis、myBatis-plus等關(guān)鍵技術(shù)。其中,Springboot提供基礎(chǔ)的微服務(wù)框架實(shí)現(xiàn);SpringCloud可以實(shí)現(xiàn)服務(wù)注冊、網(wǎng)關(guān)等功能;Redis實(shí)現(xiàn)系統(tǒng)的緩存;myBatis-plus用于實(shí)現(xiàn)數(shù)據(jù)層的對(duì)象化讀寫。在構(gòu)建微服務(wù)建構(gòu)時(shí),獨(dú)立部署各個(gè)微服務(wù)單元,為了減少各微服務(wù)單元在配置及運(yùn)行時(shí)所耗費(fèi)的資源,提高運(yùn)行效率,對(duì)RPA綜合管理平臺(tái)中各微服務(wù)進(jìn)行統(tǒng)一配置,通過統(tǒng)一配置設(shè)置通信接口等選項(xiàng)。本文中使用SpringCloud中的Config組件對(duì)RPA綜合管理平臺(tái)中不同的微服務(wù)提供統(tǒng)一配置接口。在注冊微服務(wù)時(shí),本文采用Eureka注冊中心組件,登記RPA綜合管理平臺(tái)中的各項(xiàng)微服務(wù)。只有通過注冊中心注冊的各項(xiàng)服務(wù),才能在RPA綜合管理平臺(tái)中被調(diào)用。同時(shí),通過微服務(wù)注冊中心,確保各項(xiàng)微服務(wù)在線,否則注冊中心會(huì)將微服務(wù)的狀態(tài)設(shè)置為不可用,并從可用列表中移除。在實(shí)現(xiàn)RPA綜合管理平臺(tái)的網(wǎng)關(guān)時(shí),本文主要采用SpringCloud中的Gateway等組件,實(shí)現(xiàn)各項(xiàng)微服務(wù)的路由、安全驗(yàn)證等功能,以保障微服務(wù)體系的正常運(yùn)轉(zhuǎn)。通過微服務(wù)的各項(xiàng)組件,保障RPA綜合管理平臺(tái)中各類RPA微服務(wù)可以相互通信,實(shí)現(xiàn)訪問統(tǒng)一的數(shù)據(jù)管理層等功能。
5" 結(jié)束語
本文基于微服務(wù)框架設(shè)計(jì)RPA綜合管理平臺(tái)的架構(gòu)。通過微服務(wù)可以解決異構(gòu)的RPA之間的資源共享、服務(wù)調(diào)度等問題。同時(shí),通過微服務(wù),可以讓不同廠商的RPA進(jìn)行相互通信,訪問統(tǒng)一的數(shù)據(jù)管理層,既有助于企業(yè)采購不同的RPA滿足多樣化的業(yè)務(wù)需求,也有助于企業(yè)采用統(tǒng)一的管理方式,提高企業(yè)中RPA的資源調(diào)度效率?!?/p>
參考文獻(xiàn)
[1] Gkoulis D, Bardaki C, Politi E, et al. An Event-based Microservice Platform for Autonomous Cyber-Physical Systems: the case of Smart Farming[C].2021 16th International Conference of System of Systems Engineering (SoSE). 2021,1(9):10-13.
[2] Henning S, Hasselbring W. Theodolite: Scalability Benchmarking of Distributed Stream Processing Engines in Microservice Architectures[J]. Big Data Research, 2021,1(2):90-93.
[3] Whaiduzzaman M, Mahi M, Barros A. BFIM: Performance Measurement of a Blockchain Based Hierarchical Tree Layered Fog-IoT Microservice Architecture[J]. IEEE Access, 2021,1(99):1-3.
[4] 肖勇,周密,錢斌.微服務(wù)架構(gòu)在網(wǎng)級(jí)電能量數(shù)據(jù)平臺(tái)中的應(yīng)用研究[J].浙江工業(yè)大學(xué)學(xué)報(bào),2021,1(3):90-94.
[5] 劉政,虞慧群,范貴生.一種基于主副備份的微服務(wù)可靠性建模與分析方法[J].華東理工大學(xué)學(xué)報(bào)(自然科學(xué)版),2021,48(5):5-10.
[6] 崔海濤,章程,丁翔,等.面向微服務(wù)架構(gòu)的開發(fā)組織適應(yīng)性評(píng)估框架[J].軟件學(xué)報(bào),2021,32(5):28-32.