謝 澤,朱建生,王富章,李 雯,王 拓
(1.中國鐵道科學(xué)研究院 研究生部,北京 100081;2.中國鐵道科學(xué)研究院集團(tuán)有限公司 電子計(jì)算技術(shù)研究所,北京 100081)
鐵路客票商旅服務(wù)以鐵路客運(yùn)服務(wù)為主,以酒店住宿、網(wǎng)絡(luò)約車、餐飲及保險(xiǎn)等商旅服務(wù)為輔,將多種形式服務(wù)集成,從而為商旅客戶提供便捷的綜合服務(wù)。鐵路客票商旅服務(wù)平臺是鐵路客票系統(tǒng)對公服務(wù)的補(bǔ)充,為了保證鐵路客票商旅服務(wù)產(chǎn)品數(shù)據(jù)及服務(wù)金額能夠在全生命周期內(nèi)精準(zhǔn)管理,需要搭建一套具備數(shù)據(jù)記錄、自動化對賬以及誤差校正等功能的鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)。
目前,很多領(lǐng)域?qū)τ?jì)費(fèi)系統(tǒng)、財(cái)務(wù)管理及智能化技術(shù)進(jìn)行研究。在銀行、金融及電商等領(lǐng)域智能化計(jì)費(fèi)系統(tǒng)方面,葉金平與劉映輝等[1-2]運(yùn)用ETL,VFP和STP技術(shù)搭建商業(yè)銀行的自動化對賬系統(tǒng);翟敏[3]對金融公司ERP系統(tǒng)財(cái)務(wù)業(yè)務(wù)應(yīng)用一體化模式下的結(jié)賬和對賬進(jìn)行研究,實(shí)現(xiàn)財(cái)務(wù)復(fù)雜細(xì)節(jié)問題簡單化。在大型電商企業(yè)方面,為實(shí)現(xiàn)銷售產(chǎn)品財(cái)務(wù)管理流程智能化,俞清[4]分析EVA系統(tǒng)關(guān)鍵技術(shù)及應(yīng)用難點(diǎn),滿春[5]優(yōu)化財(cái)務(wù)系統(tǒng)自動化入賬模式。在云計(jì)算和區(qū)塊鏈技術(shù)方面,何鳴、崔益彪、陳宇等[6-8]將計(jì)費(fèi)系統(tǒng)的底層安全與數(shù)據(jù)存儲及處理效率作為主要研究對象,將Kafka等云計(jì)算技術(shù)和具備數(shù)據(jù)不易篡改特點(diǎn)的區(qū)塊鏈技術(shù)運(yùn)用于財(cái)務(wù)計(jì)費(fèi)系統(tǒng)中。
鐵路客票財(cái)務(wù)系統(tǒng)已經(jīng)實(shí)現(xiàn)對多種客運(yùn)服務(wù)銷售渠道產(chǎn)生的客運(yùn)收入進(jìn)行結(jié)賬等操作[9],由于鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)具有處理數(shù)據(jù)量多、商品服務(wù)數(shù)據(jù)類型復(fù)雜等特點(diǎn),需要融合信息技術(shù)實(shí)現(xiàn)獨(dú)立、安全、高可擴(kuò)展的系統(tǒng)架構(gòu),以解決鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)的數(shù)據(jù)存儲與補(bǔ)償以及自動化對賬與修正等關(guān)鍵技術(shù)難點(diǎn)。
鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)除車票相關(guān)財(cái)務(wù)數(shù)據(jù)外,還需要管理酒店住宿產(chǎn)品、機(jī)票產(chǎn)品、網(wǎng)絡(luò)約車產(chǎn)品以及服務(wù)費(fèi)等多類型數(shù)據(jù),因而計(jì)費(fèi)系統(tǒng)需要通過商旅服務(wù)產(chǎn)品數(shù)據(jù)存儲與補(bǔ)償確保數(shù)據(jù)準(zhǔn)確記錄支撐數(shù)據(jù)基礎(chǔ),并通過財(cái)務(wù)自動化對賬與修正保障產(chǎn)品金額對賬準(zhǔn)確,從而實(shí)現(xiàn)商旅服務(wù)產(chǎn)品及金額的全生命周期管理。鐵路客票商旅服務(wù)產(chǎn)品及金額數(shù)據(jù)全生命周期管理流程如圖1所示。
由圖1可見,鐵路客票商旅服務(wù)產(chǎn)品及金額數(shù)據(jù)全生命周期管理流程關(guān)鍵步驟為商旅服務(wù)產(chǎn)品數(shù)據(jù)記錄和商旅服務(wù)產(chǎn)品對賬,其中數(shù)據(jù)記錄的準(zhǔn)確性和內(nèi)部對賬修正是商旅服務(wù)計(jì)費(fèi)系統(tǒng)的技術(shù)難點(diǎn)。在數(shù)據(jù)處理類型方面,由于商旅服務(wù)種類隨著業(yè)務(wù)擴(kuò)展不斷增加,如保險(xiǎn)等服務(wù),因而鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)需要具備良好的擴(kuò)展性和兼容能力,更好地應(yīng)對商旅服務(wù)類型多的業(yè)務(wù)難點(diǎn);同時(shí)鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)還應(yīng)具備獨(dú)立微服務(wù)的特性,以保證商旅服務(wù)需要變更的子系統(tǒng)升級不會對整體計(jì)費(fèi)功能產(chǎn)生影響。在系統(tǒng)性能需求方面,應(yīng)充分考慮商旅客戶數(shù)據(jù)量在短期內(nèi)達(dá)到千萬級,需要具備高并發(fā)數(shù)據(jù)處理、高效存儲和查詢的能力以達(dá)到海量數(shù)據(jù)響應(yīng)迅速。在系統(tǒng)安全需求方面,鐵路客票商旅服務(wù)涉及商旅客戶的隱私信息,需要計(jì)費(fèi)系統(tǒng)充分考慮各層級容錯能力保障系統(tǒng)安全可靠,同時(shí)還需要對底層數(shù)據(jù)安全隔離并嚴(yán)格限制數(shù)據(jù)訪問權(quán)限,保證隱私敏感加密數(shù)據(jù)不泄露。
圖1 鐵路客票商旅服務(wù)產(chǎn)品及金額數(shù)據(jù)全生命周期管理流程Fig.1 Life cycle management process of railway passenger ticket business travel service products and amount data
根據(jù)鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)的技術(shù)難點(diǎn)要求,設(shè)計(jì)以數(shù)據(jù)記錄和財(cái)務(wù)對賬為業(yè)務(wù)主線的系統(tǒng)架構(gòu),主要從計(jì)費(fèi)系統(tǒng)結(jié)算模塊及數(shù)據(jù)庫模塊的功能部署角度概括商旅服務(wù)計(jì)費(fèi)系統(tǒng)實(shí)現(xiàn)。鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)架構(gòu)示意圖如圖2所示。
由圖2可見,商旅服務(wù)業(yè)務(wù)系統(tǒng)是商旅平臺對客戶提供鐵路客運(yùn)、酒店住宿、網(wǎng)絡(luò)約車、餐飲等商旅服務(wù)的系統(tǒng)平臺,該系統(tǒng)生產(chǎn)的產(chǎn)品數(shù)據(jù)是商旅服務(wù)計(jì)費(fèi)系統(tǒng)進(jìn)行全生命周期管理的服務(wù)對象;服務(wù)生產(chǎn)源主要包括鐵路12306、機(jī)票平臺、酒店預(yù)訂平臺等底層服務(wù)提供商,該服務(wù)提供商在商旅服務(wù)流程中生產(chǎn)的存根等數(shù)據(jù)是商旅服務(wù)計(jì)費(fèi)系統(tǒng)對賬的主要對象;財(cái)務(wù)中心主要負(fù)責(zé)商旅服務(wù)相關(guān)金額的基礎(chǔ)財(cái)務(wù)管理;緩存服務(wù)主要用于存儲并更新數(shù)據(jù)庫模塊中常用的查詢數(shù)據(jù),以降低頻繁的查詢對數(shù)據(jù)庫產(chǎn)生的壓力。
商旅計(jì)費(fèi)系統(tǒng)數(shù)據(jù)庫模塊是計(jì)費(fèi)系統(tǒng)數(shù)據(jù)記錄業(yè)務(wù)的核心模塊,主要實(shí)現(xiàn)計(jì)費(fèi)系統(tǒng)數(shù)據(jù)的增刪改查等功能,圖中橙色業(yè)務(wù)線路是數(shù)據(jù)記錄業(yè)務(wù)主要流程。該流程通過探針程序的形式將商旅服務(wù)計(jì)費(fèi)功能嵌入在商旅服務(wù)業(yè)務(wù)系統(tǒng)中,每當(dāng)鐵路客票商旅服務(wù)系統(tǒng)產(chǎn)生訂單,計(jì)費(fèi)探針便會將產(chǎn)品數(shù)據(jù)以固定的信息格式傳輸至消息隊(duì)列。商旅服務(wù)計(jì)費(fèi)系統(tǒng)會利用監(jiān)聽器實(shí)時(shí)消費(fèi)消息隊(duì)列中的服務(wù)數(shù)據(jù),并且根據(jù)數(shù)據(jù)不同類型將數(shù)據(jù)存儲至計(jì)費(fèi)系統(tǒng)數(shù)據(jù)庫模塊中,如客戶服務(wù)定義數(shù)據(jù)及商旅服務(wù)明細(xì)數(shù)據(jù)等。因此,商旅服務(wù)計(jì)費(fèi)系統(tǒng)數(shù)據(jù)模塊對產(chǎn)品數(shù)據(jù)的準(zhǔn)確記錄是計(jì)費(fèi)系統(tǒng)數(shù)據(jù)基礎(chǔ)的支撐,數(shù)據(jù)存儲與補(bǔ)償是數(shù)據(jù)準(zhǔn)確記錄的關(guān)鍵技術(shù)和保障。
圖2 鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)架構(gòu)示意圖Fig.2 Architecture of railway passenger ticket business travel service billing system
計(jì)費(fèi)系統(tǒng)結(jié)算模塊主要實(shí)現(xiàn)車票、酒店訂單、餐飲訂單等商旅服務(wù)產(chǎn)品數(shù)據(jù)的自動化對賬。該模塊的對賬對象主要包含服務(wù)生產(chǎn)源及商旅客戶服務(wù)消費(fèi)源,圖中綠色及紅色業(yè)務(wù)線路分別為內(nèi)部對賬及外部對賬流程。在內(nèi)部對賬流程中數(shù)據(jù)以服務(wù)生產(chǎn)源數(shù)據(jù)為核對標(biāo)準(zhǔn)。當(dāng)商旅服務(wù)計(jì)費(fèi)系統(tǒng)與服務(wù)生產(chǎn)源進(jìn)行的內(nèi)部對賬比對修正無誤并生成外部對賬數(shù)據(jù)后,計(jì)費(fèi)系統(tǒng)與商旅客戶發(fā)生的外部對賬才具有實(shí)際意義。在外部對賬過程中,鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)需要將外部對賬數(shù)據(jù)推送給商旅客戶以便客戶自行核對,并通過URL調(diào)用方法完成商旅客戶對賬結(jié)果接受以及轉(zhuǎn)賬結(jié)果轉(zhuǎn)送的消息推送。商旅客戶對賬結(jié)果用于排查業(yè)務(wù)服務(wù)記錄異常,轉(zhuǎn)賬結(jié)果用于通知財(cái)務(wù)中心服務(wù)款狀態(tài)。商旅服務(wù)計(jì)費(fèi)系統(tǒng)對賬的數(shù)據(jù)對象具有數(shù)據(jù)量大、類型多等特點(diǎn),因此準(zhǔn)確的自動化對賬以及異常數(shù)據(jù)修正是計(jì)費(fèi)系統(tǒng)對賬模塊的關(guān)鍵技術(shù),也是后續(xù)財(cái)務(wù)流程順利進(jìn)行的保障。
數(shù)據(jù)存儲與補(bǔ)償技術(shù)是鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)數(shù)據(jù)記錄準(zhǔn)確的保障。鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)通過利用數(shù)據(jù)雙寫和數(shù)據(jù)補(bǔ)償技術(shù)不僅可以保證數(shù)據(jù)記錄的物理隔離,還可以將記錄數(shù)據(jù)與標(biāo)準(zhǔn)數(shù)據(jù)校驗(yàn)。鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)數(shù)據(jù)存儲與補(bǔ)償技術(shù)架構(gòu)如圖3所示。如圖3中灰色虛線條及紅色禁止標(biāo)記所示,如果商旅服務(wù)產(chǎn)生的業(yè)務(wù)數(shù)據(jù)僅僅保留在鐵路客票系統(tǒng)數(shù)據(jù)庫中,那么商旅服務(wù)計(jì)費(fèi)系統(tǒng)的數(shù)據(jù)模塊和ORDER訂單模塊對數(shù)據(jù)的增刪改查都會給鐵路客票系統(tǒng)數(shù)據(jù)庫帶來巨大壓力,為鐵路客票系統(tǒng)帶來安全隱患。為了能夠?qū)⑴c商旅業(yè)務(wù)相關(guān)的鐵路客票數(shù)據(jù)剝離,并且還能夠以鐵路客票數(shù)據(jù)作為商旅服務(wù)計(jì)費(fèi)系統(tǒng)的數(shù)據(jù)標(biāo)準(zhǔn),提出以下數(shù)據(jù)存儲及補(bǔ)償?shù)倪壿嬃鞒蹋菏紫冉?jīng)過圖中訂單雙寫業(yè)務(wù)流程實(shí)現(xiàn)數(shù)據(jù)雙寫與數(shù)據(jù)剝離,再利用數(shù)據(jù)復(fù)制、轉(zhuǎn)發(fā)和消費(fèi)完成數(shù)據(jù)補(bǔ)償,實(shí)現(xiàn)鐵路客票數(shù)據(jù)復(fù)制,并對標(biāo)準(zhǔn)的訂單等剝離數(shù)據(jù)校正。數(shù)據(jù)存儲與補(bǔ)償在執(zhí)行順序上通過設(shè)定固定遲滯時(shí)間將數(shù)據(jù)補(bǔ)償延后,從而避免數(shù)據(jù)庫操作異常。
數(shù)據(jù)存儲主要通過雙寫技術(shù)的理論概念實(shí)現(xiàn),當(dāng)商旅客戶發(fā)起服務(wù)請求后,商旅業(yè)務(wù)系統(tǒng)會將互聯(lián)網(wǎng)端傳送的信息分別發(fā)布給位于客服內(nèi)網(wǎng)的鐵路客票訂單系統(tǒng)以及商旅服務(wù)計(jì)費(fèi)訂單系統(tǒng)。鐵路客票訂單系統(tǒng)會將商旅客戶發(fā)起請求的業(yè)務(wù)數(shù)據(jù)存儲在位于客票網(wǎng)的訂單表和存根表數(shù)據(jù)庫中,鐵路客票商旅服務(wù)計(jì)費(fèi)訂單系統(tǒng)則會通過探針使用消息生產(chǎn)與消費(fèi)的模式將業(yè)務(wù)數(shù)據(jù)存儲在客服內(nèi)網(wǎng)的服務(wù)費(fèi)數(shù)據(jù)庫及訂單數(shù)據(jù)庫中。雙寫的本質(zhì)是將位于客票網(wǎng)的商旅訂單相關(guān)數(shù)據(jù)復(fù)制剝離存儲在客服內(nèi)網(wǎng)中,減少鐵路客票系統(tǒng)數(shù)據(jù)庫壓力,該雙寫數(shù)據(jù)不是鐵路客票系統(tǒng)數(shù)據(jù)的完整復(fù)制,存在字段關(guān)聯(lián)關(guān)系。計(jì)費(fèi)系統(tǒng)雙寫數(shù)據(jù)在存入數(shù)據(jù)庫時(shí),通過使用ShardingSphere的水平分庫策略作為分庫依據(jù),使得數(shù)據(jù)能夠較為平衡地存儲在各個(gè)數(shù)據(jù)分庫中[10]。
鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)數(shù)據(jù)補(bǔ)償通過生產(chǎn)消費(fèi)的模式對鐵路客票庫數(shù)據(jù)進(jìn)行復(fù)制,并按照隊(duì)列的形式將商旅計(jì)費(fèi)庫數(shù)據(jù)排隊(duì),將標(biāo)準(zhǔn)數(shù)據(jù)與商旅計(jì)費(fèi)庫數(shù)據(jù)輪詢比對補(bǔ)償。鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)數(shù)據(jù)補(bǔ)償原理如圖4所示。數(shù)據(jù)補(bǔ)償主要功能體現(xiàn)于2個(gè)方面,首先在數(shù)據(jù)雙寫存儲過程中由于系統(tǒng)異常或系統(tǒng)間響應(yīng)超時(shí)導(dǎo)致數(shù)據(jù)存儲雙寫失敗時(shí),數(shù)據(jù)補(bǔ)償可以通過輪詢的比對邏輯將雙寫失敗的數(shù)據(jù)補(bǔ)充。其次,位于客服內(nèi)網(wǎng)的部分?jǐn)?shù)據(jù)具有狀態(tài)標(biāo)志字段,數(shù)據(jù)補(bǔ)償還會檢查狀態(tài)標(biāo)志字段的雙寫結(jié)果是否與標(biāo)準(zhǔn)鐵路客票數(shù)據(jù)狀態(tài)一致,如果不一致則會以鐵路客票數(shù)據(jù)為標(biāo)準(zhǔn)進(jìn)行補(bǔ)償修改。鐵路客票數(shù)據(jù)經(jīng)過億級訂單量的檢驗(yàn),完全具備作為數(shù)據(jù)標(biāo)準(zhǔn)的資格。數(shù)據(jù)補(bǔ)償環(huán)節(jié)中的鐵路客票數(shù)據(jù)是以鐵路客票系統(tǒng)入庫時(shí)的SQL消息形式傳遞,通過數(shù)據(jù)庫中間件將鐵路客票數(shù)據(jù)庫的SQL操作信息復(fù)制轉(zhuǎn)發(fā)給RocketMQ消息隊(duì)列,數(shù)據(jù)補(bǔ)償模塊通過監(jiān)聽器設(shè)置遲滯時(shí)間延時(shí)消費(fèi)隊(duì)列消息保證補(bǔ)償行為位于數(shù)據(jù)存儲之后。
財(cái)務(wù)自動化對賬與修正是鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)對服務(wù)產(chǎn)品金額精準(zhǔn)結(jié)算的保障,也是商旅產(chǎn)品全生命流程管理中的重要一環(huán)。自動化對賬主要分為內(nèi)部對賬與外部對賬,修正主要分為自動化修正與人工修正。內(nèi)部對賬主要涉及鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)記錄的產(chǎn)品數(shù)據(jù)與服務(wù)生產(chǎn)源鐵路客票系統(tǒng)記錄標(biāo)準(zhǔn)產(chǎn)品數(shù)據(jù)間的核對,在該過程中以鐵路客票系統(tǒng)記錄數(shù)據(jù)為標(biāo)準(zhǔn),當(dāng)出現(xiàn)兩方數(shù)據(jù)不一致時(shí),通過自動化修正功能保證鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)數(shù)據(jù)與鐵路客票系統(tǒng)數(shù)據(jù)吻合。內(nèi)部對賬主要核對2個(gè)方面數(shù)據(jù)記錄準(zhǔn)確性,分別為數(shù)據(jù)量和記錄金額。在數(shù)據(jù)量異常方面,若鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)數(shù)據(jù)庫響應(yīng)超時(shí),可能造成服務(wù)數(shù)據(jù)缺失;若位于業(yè)務(wù)系統(tǒng)的計(jì)費(fèi)探針程序重復(fù)調(diào)用時(shí),可能造成服務(wù)數(shù)據(jù)重復(fù)記錄。在記錄金額方面,主要核對商旅服務(wù)產(chǎn)品價(jià)格是否與鐵路客票系統(tǒng)數(shù)據(jù)一致。外部對賬發(fā)生在內(nèi)部對賬之后,主要由商旅客戶通過URL獲取內(nèi)部對賬生成的總結(jié)性數(shù)據(jù)自行核對。
圖3 鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)數(shù)據(jù)存儲與補(bǔ)償技術(shù)架構(gòu)Fig.3 Technical architecture of data storage and compensation of railway passenger ticket business travel service billing system
圖4 鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)數(shù)據(jù)補(bǔ)償原理Fig.4 Data compensation principle of railway passenger ticket business travel service billing system
從對賬對象的種類分析,商旅服務(wù)計(jì)費(fèi)系統(tǒng)內(nèi)部對賬與既有鐵路客票系統(tǒng)對賬的區(qū)別為鐵路客票系統(tǒng)的對賬對象種類單一,只需要將所有訂單統(tǒng)一進(jìn)行核對,而商旅服務(wù)計(jì)費(fèi)系統(tǒng)在內(nèi)部對賬過程中以商旅客戶為單位劃分?jǐn)?shù)據(jù)種類,在不同商旅客戶單位內(nèi)還需要根據(jù)不同商旅服務(wù)種類分別進(jìn)行對賬。內(nèi)部對賬流程如圖5所示,通過商旅客戶編號及商旅服務(wù)產(chǎn)品類型2個(gè)字段嵌套2層遍歷循環(huán),實(shí)現(xiàn)對不同客戶的不同服務(wù)產(chǎn)品進(jìn)行數(shù)量和金額核對。在每層遍歷過程中對所有異常進(jìn)行記錄,以便將消息推送給運(yùn)維人員,從而有跡可查。在自動修正的過程中,主要將商旅服務(wù)計(jì)費(fèi)系統(tǒng)數(shù)據(jù)與標(biāo)準(zhǔn)鐵路客票數(shù)據(jù)進(jìn)行修正統(tǒng)一,并對自動修正的結(jié)果進(jìn)行日志記錄,當(dāng)自動修正失敗時(shí),就需要人工進(jìn)行手動修正,此時(shí)自動修正日志便為人工修正提供記錄支撐。
為了驗(yàn)證商旅服務(wù)計(jì)費(fèi)系統(tǒng)安全可靠,設(shè)計(jì)了鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)數(shù)據(jù)補(bǔ)償以及對賬修正準(zhǔn)確性測試,主要測試了服務(wù)費(fèi)記錄缺失、重復(fù)和雙寫訂單缺失、狀態(tài)偏差的異常場景。對于服務(wù)費(fèi)及雙寫訂單的缺失異常,系統(tǒng)都可以通過比對記錄數(shù)據(jù)量的策略準(zhǔn)確補(bǔ)償,對于服務(wù)費(fèi)記錄重復(fù)的異常,則是通過內(nèi)部對賬的金額不匹配異常修正。商旅雙寫訂單狀態(tài)主要存在退票狀態(tài)及改簽票狀態(tài)與鐵路客票訂單記錄不一致問題,通過數(shù)據(jù)補(bǔ)償機(jī)制都可以有效解決。鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)異常測試如表1所示。
圖5 內(nèi)部對賬流程Fig.5 Internal accounting process
除了對商旅服務(wù)計(jì)費(fèi)系統(tǒng)數(shù)據(jù)補(bǔ)償、對賬修正的準(zhǔn)確性進(jìn)行測試外,有必要對計(jì)費(fèi)系統(tǒng)進(jìn)行性能測試,其中系統(tǒng)吞吐量(TPS)、CPU利用率及響應(yīng)時(shí)間(RT)是衡量系統(tǒng)性能的重要指標(biāo)。商旅客戶出行構(gòu)成的商旅服務(wù)計(jì)費(fèi)系統(tǒng)業(yè)務(wù)量具備周期性規(guī)律,在預(yù)計(jì)的非高峰期、弱高峰期及高峰期對服務(wù)器集群應(yīng)該配備不同數(shù)量的服務(wù)器。因此,分別對5臺、8臺及10臺服務(wù)器進(jìn)行系統(tǒng)性能測試。系統(tǒng)吞吐量隨CPU利用率變化趨勢如圖6所示,3種不同數(shù)量服務(wù)器配備的系統(tǒng)吞吐量隨著CPU利用率的不斷增加而增大,并且系統(tǒng)性能與服務(wù)器配備數(shù)目成正比關(guān)系。系統(tǒng)響應(yīng)時(shí)間隨CPU利用率變化趨勢如圖7所示,3種不同數(shù)量服務(wù)器配備的系統(tǒng)響應(yīng)隨著CPU利用率的不斷增加而增大,并且服務(wù)器配備量越大,系統(tǒng)響應(yīng)時(shí)間越高,但并不與配屬服務(wù)器臺數(shù)成正比。
從以上測試結(jié)果中可以判定系統(tǒng)性能測試基本達(dá)到應(yīng)用要求,在CPU利用率為60%的正常使用情況下,系統(tǒng)平均響應(yīng)時(shí)間都在80 ms上下,系統(tǒng)吞吐量也處于優(yōu)良狀態(tài)范圍內(nèi),5臺服務(wù)器的系統(tǒng)吞吐量為1 494,系統(tǒng)響應(yīng)時(shí)間為64 ms,完全可以滿足當(dāng)前商旅客戶量的系統(tǒng)需求。
表1 鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)異常測試 個(gè)Table.1 Abnormal test of railway passenger ticket business travel service billing system
圖6 系統(tǒng)吞吐量隨CPU利用率變化趨勢Fig.6 Trend of system throughput with CPU utilization rate
圖7 系統(tǒng)響應(yīng)時(shí)間隨CPU利用率變化趨勢Fig.7 Trend of system response time with CPU utilization rate
為保障鐵路客票商旅服務(wù)平臺的產(chǎn)品數(shù)據(jù)記錄、自動化對賬與修正有充分技術(shù)支撐,通過使用數(shù)據(jù)雙寫、數(shù)據(jù)補(bǔ)償和輪詢比對等策略,搭建了安全且獨(dú)立的微服務(wù)鐵路客票商旅服務(wù)計(jì)費(fèi)系統(tǒng)。該計(jì)費(fèi)系統(tǒng)對既有的數(shù)據(jù)缺失、重復(fù)及金額不匹配等異??梢詫?shí)現(xiàn)自動化修正,并且良好的業(yè)務(wù)性能測試證明該系統(tǒng)足以支撐當(dāng)前商旅客戶量的系統(tǒng)要求,可以更好地保證商旅服務(wù)平臺的運(yùn)作效率,提高鐵路客票對公服務(wù)的品質(zhì)。