段凱凱 崔覺瑞 梁志 李繼文





摘? 要:新型冠狀病毒疫情來勢兇猛,如何更好地助力全國疫情防控工作,是通信行業的不可或缺的責任,而短信通信觸達則是較為親民且直觀的方式。在行業發展和用戶規模持續增長下,應允國家、政府和公益事業的等特殊性的通信要求,山西公司基于公司級的“公益短信群發系統”,輕量化承載,同時從安全、網絡、運維、生產于一體,順應接入5G大區標準,滿足了國家公益、疫情、以及各種自然災害或突發情況下專屬短信送達。
關鍵詞:短信群發系統;通信觸達;5G
中圖分類號:TN929.5? ? ? ? ? ? ? ? ? ?文獻標識碼:A文章編號:2096-4706(2021)16-0134-05
Construction and Application of Public Welfare Short Message Group Sending System
DUAN Kaikai, CUI Juerui, LIANG Zhi, LI Jiwen
(China Mobile Shanxi Co., Ltd., Taiyuan? 030032, China)
Abstract: The outbreak of COVID-19 epidemic is fierce. How to assist the national epidemic prevention and control work better is an indispensable responsibility of the communication industry, while short message communication is more close to the people and intuitive. Under the development of the industry and the continuous growth of the user scale, Shanxi company responds to the special communication requirements of the state, the government and public welfare undertakings. Based on the company-level “Public Welfare Short Message Group Sending System”, which is lightweight, Shanxi Company complies with the access to 5G regional standards from the aspects of security, network, operation, maintenance and production to meet the national public welfare, epidemic, as well as a variety of natural disasters or emergencies under the exclusive SMS service.
Keywords: short message group sending system; communication touch; 5G
0? 引? 言
面對提速降費和互聯網+的雙重挑戰,以及國內科學技術的迅猛發展,在眾多通信的“紅海市場”中,短信通信仍是國人最直接的即時交互方式。自2014年4G技術的革新,到現今5G技術的迅猛發展,短信從未淡出視線,并逐步成為國家、政府以及運營商之間特殊時期的有效憑證。隨著5G技術的多元化和成果化,短信作為5G發展下的節點,在順應國家發展和政府要求的同時,承接接入5G技術并支撐5G等新模式的突破。
隨著庚子鼠年新春的到來,突如其來的新型冠狀病毒感染肺炎疫情來勢兇猛,如何更好地助力全國疫情防控工作,是通信行業的不可缺少的責任[1,2],而短信通信則是較為親民、柔和且直觀的方式。以往只承接業務推廣,交互,通知提醒的短信系統,疫情期間則需發展其具有社會效益和公益服務,類如山西移動自疫情暴發伊始僅十天便已為工信部、衛建委、防疫指揮部、各地市政府機構累積發送疫情相關短信5.1億次,受到各行業和用戶好評。
現傳統短信包含業務受理、營銷推廣,訂購提醒,話費等一系列的用戶提醒,其系統下發方式有大文件傳輸、掃表、接口、固定消息模式、文本模式等。而在行業發展和用戶規模不斷增長的情況下,應允國家、政府和公益事業的等特殊性的通信要求,需構建基于公司級的“短信群發系統”,能輕量化承載,從安全、網絡、運維、生產于一體的規范化流程,順應接入5G大區標準,滿足國家公益、疫情、以及各種自然災害或突發情況下專屬定制短信的及時送達。
1? 公益短信群發系統建設
1.1? 公益短信群發系統應用架構
公益短信群發系統的建設架構分為觸點域、業務支撐域和外部渠道,其中業務支撐域提供了群發處理、配額控制、短信網關、消息管理、監控管理、運維管理和系統管理等最關鍵應用場景;觸點域則為系統通過短信方式與終端用戶進行接觸;外部渠道為群發使用的用戶文件,可以采用離線文件的方式傳輸提供,進行后續短信群發任務的創建。
業務支撐域:包含能力支撐域、運營管理域,能力支撐域納管群發處理引擎、短信發送模塊、短信網關核心模塊及運營管理的基礎條件和運行算法,運營管理域提供了消息管理、監控管理、運維管理、系統管理等相關運營信息。支撐域分布式多任務部署,多進程處理,網關負載集群利用,整體應用服務系統部署靈活,提供了業務處理和監控、系統運維、任務記錄、長短信拆分、雙協議轉換等多種能力;除包含的核心代碼算法運行外,業務系統擁有智能化運維接入、靈活化個性告警發出的機制,實現了運維告警一體化。
數據管理及有效機制:有效及敏感數據利用多層迭代要因數據模糊化的安全組件傳輸,以底層SSM微服務+密塊加密算法為基礎構建的安全組件,通用能力包括提供數據接入能力、算法管理、模型沉淀,通過算法和框架中“微+密”的特性,實現了敏捷交互、安全存儲和傳輸,定制化的數據落表,沉淀用戶樣本數據。
數據層:對群發任務數據源kafka消息模式、文本模式、大數據hbase信息模式、redis緩存消息等進行傳輸配置,去除高風險萬能模板傳輸介質,配置動態參數變量縮減安全風險同時便于傳輸和使用,處理機制動態調配待發送鏈路到待發送文件,cmpp和smpp固定協議傳輸,內外部使用集成接口服務。
傳輸時管理界面對群發任務進行創建和編輯操作,最終落地任務信息保存到數據庫;當任務創建時,任務分配會選擇動態調配算法選擇一個當前下發量最小的任務進行處理,并設置任務號和任務訂單一同保存到數據庫中;特定文件路由到相關鏈路,分出機制及處理機制程序會通過文件分發程序分發,利用鏈路保持原則,一臺為任務的處理主機,其他兩個為文件備份,當主機宕機時是可以切換到其他引擎處理;分發程序根據配置的主機個數和路徑,如果系統主機需要擴容可修改該參數,在下次任務創建時就可以將新的主機添加上,達到動態系統擴容的目的。群發處理主機上的處理程序讀取屬于獨自的任務進行處理,并最終推送給網關;網關通過F5配置,做到雙機雙活部署提供短信發送能力。應用架構如圖1所示。
1.2? 公益短信群發系統運行架構
公益短信系統實現業務內部服務中心化與可管理性、系統建設高可用性和均衡性、系統建設高性能和可擴展性、運維告警一體化的架構特點,每個環節都扮演著重要作用。業務內部服務中心化與可管理性:業務按功能域對服務能力進行聚合,實現服務標準化提供,支持服務能力復用。界面邏輯與業務服務能力分離,應用與數據分離,實現應用的分層解耦,實現了全界面的應用配置、參數配置和運行管理,如:提供WEB界面配置流程、啟停流程;通過WEB界面監控系統運行參數及服務調用情況,系統運行架構圖如圖2所示。
系統建設高可用性和均衡性:系統主備部署最小化利用資源,且滿足高可用基本條件;群發處理引擎分布式多任務處理,下發模板分布式多進程,網關負載集群利用,整體應用服務系統部署靈活,多采用分布式部署,充分利用系統硬件資源,保障了業務連續性。同時,系統根據設備能力配置負荷能力,實現相關的負載均衡,包括提供主機負載平衡性動態調整,提供任務平衡性動態調整。
系統建設高性能和可擴展性:系統功能要滿足群發處理,采用分了階段的分布式事件驅動架構,增加服務調用的吞吐量,滿足大規模并發業務處理要求,分布式部署在各中心,增強中心服務的處理能力,其應用組件支持處理能力彈性擴展。
1.3? 公益短信群發系統處理流程
運營人員在管理界面創建群發任務,多種形式進行傳輸,例以發送號碼作為下發文件的方式進行導入,配置的群發任務經過bpm工作流審批,下發用戶號碼文件根據配置的主機列表路由群發處理引擎;處理機制對傳輸特定文件進行解析驗證,根據配置的任務類型選擇該程序需要下發的號碼短信,生成待發送短信文件;短信下發處理模塊讀取待發送短信文件調用短信網關接口,利用雙協議發送傳輸,最終通過5G消息中心發送短信;本系統配置數據等多種數據均以數據庫形式和個性化沉淀樣本,任務數據包含下發號碼文件、處理號碼文件、待發送短信內容都使用文件方式進行轉存,公益短信系統關鍵處理流程如圖3所示。
2? 公益短信群發系統核心技術
2.1? 指標工作流處理
BPM審批工作流是公益短信系統關鍵的一環,方便使用人員的可視化操作和審批。整個流程可控,單一流程開發周期較短;使用變量參數時,一般無松散持久層,與業務服務沒有密切的關聯。審批工作流能夠將各行動節點串接,人員接口內嵌于流程,系統接口調用應用程序,靈活跳轉,松散耦合。
在實際使用中,公益短信BPM審批支持自定義業務流程設置,可以訓練、調試等流程,讓業務流程臻于完善。BPM足夠的靈活性,使系統建設對流程研究,并剔除存在的無效步驟和低效率流程。通過流程再造,節省了成本、加速了流程以及減少錯誤,提高ROI,也讓群發系統管理變得更為規范。
數據流使用中利用多模板數據從各子系統推送智能分析,動態分流,通過流數據任務實時處理,經過同時將數據存儲到數據庫,作為數據集,并提供給任務模型推理服務,實時將指標數據通過模型服務推理出是否為異常。
2.2? 運維告警一體化
短信群發系統智能化運維接入、靈活化個性告警發出實現運維告警一體化。智能化快速接入:自動化運維預案制作+一鍵式發布+智能化跟蹤+業務個性化告警工程。對接自動化運維平臺,批量調測聯通,由人工處理到系統監測,節省了前期運維人力和后期調測耗時。業務專屬預案制作,滿足個性化業務發展需求,一鍵式發布后,智能化跟蹤撥測。客戶端告警工程輸出,成快速接入變量參數。以上進行模板化,制成“電渠告警一體化”的接入條件。靈活化個性告警發出:告警agent快速讀取+簡單賦權。利用平臺的快速接入,讀取上階段的個性化告警,對告警agent進行簡單賦權,匯成“告警一體化”的輸出條件。
多個預案制作后進行預案之間的判斷關系,關系屬于預案,預案關系分為無條件執行、結果選擇、條件選擇,各預案關系完成后預案發布,完成多預案一鍵式發布。本案例采用條件選擇,條件選擇的變量值是一個整數,是由上一個任務輸出的,格式為“@{result=整數}@”。當子任務的輸出中有多個這種格式的字符串時,會將最后一次出現的值作為條件選擇值。一鍵式發布后程序會在任務的最后一行輸出中提取上下文變量,過程存在包含、不包含的判斷邏輯,都是提取任務輸出的最后一行是否包含指定關鍵字。待成功后執行一鍵式發布獲取狀態,任務狀態有:成功、失敗、超時、系統錯誤等。
2.3? 微服務+密塊安全
為保證使用的安全性,構建應用具體的框架時,經過專屬業務的Mybatis、Spring進行多層次的整合框架,SpringMVC作為相關請求的交互,Spring來創建映射器接口和相關事物管理以及Mybatis數據源配置等工作。不同的層次體系分別負責不同的工作內容,通過數據業務層來獲取映射器接口以及Sql會話等內容,采用Spring注入方式,省去mybatis-config.xml的事務配置以及數據源等內容,如圖4所示。
安全在系統中扮演著重要的角色[3],數據存儲同樣有多種加密方案[4,5],本文公益短信群發系統采用的安全密塊算法為一種分組密碼算法,64比特為它的分組長度,56比特為密鑰長度。加密時首先進行初始置換,再進行相同功能的16輪變換,每輪變換包含置換和代換運算,在最后一輪時輸出左右兩部分并交換次序;最后進行逆初始變化。在進行16輪變換的時候,左右分別為32比特。再把輸入的右半部分擴展成48比特,和密鑰進行異或,通過8個s盒同數輸出32比特,s盒輸入長度為6比特,輸出長度為4比特。在整個過程中,s盒是唯一的非線性元件。
整個安全環節通過SSM微服務的輕量性與智能快速模糊算法進行融合嵌套,作為用戶敏感信息存儲或傳輸一個整體組件。
3? 應用效果
突如其來的疫情使全國陷入恐慌,為更好助力疫情防控工作,山西移動公益短信群發系統開啟特殊通道,發展其社會效益和公益服務,僅十天便已為工信部、衛建委、防疫指揮部、各地市政府機構累積發送疫情相關短信5.1億次,下發成功率高于99.95%,圓滿完成政府和衛生健康委等任務,受到各行業和用戶好評。此次支撐任務中,公益短信群發系統為擔負好國企重任、做好通信事業發展寫下了濃濃的一筆,圖5為系統應用的具體過程。
4? 結? 論
山西移動輕量化承載的公益短信群發系統建設,從安全、網絡、運維、生產于一體的規范化流程。界面邏輯與業務服務能力分離,應用與數據分離,實現應用的分層解耦;以微服務和加密為基,實現敏捷交互、安全存儲,同步擁有運維告警一體化。使得移動在行業發展和用戶規模不斷增長的情況下,能夠應允國家、政府等機構特殊性的通信要求,滿足了國家公益類、應急類及自然災害或突發情況下專屬短信的及時送達。
參考文獻:
[1] 張雷,劉珊.黑龍江通信業持續加強疫情防控工作 [J].通信管理與技術,2020(1):4.
[2] 王柯懿,周文杰,劉耀,等.疫情對中國信息通信業發展的影響 [J].中國電信業,2020(4):30-32.
[3] 張玉磊,駱廣萍,張永潔,等.基于格式保留的敏感信息加密方案 [J].計算機工程與科學,2020,42(2):236-240.
[4] 蔡雙進.數據加密技術在計算機網絡通信安全中的應用分析 [J].電腦迷,2018(7):19.
[5] 葉聰聰,李國強,蔡鴻明,等.區塊鏈的安全檢測模型 [J].軟件學報,2018,29(5):1348-1359.
作者簡介:段凱凱(1993—),男,漢族,山西太原人,中級工程師,碩士研究生,研究方向:系統開發。