專利名稱:多業(yè)務(wù)統(tǒng)一處理方法及統(tǒng)一業(yè)務(wù)平臺(tái)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及移動(dòng)通訊領(lǐng)域,特別是涉及一種多業(yè)務(wù)統(tǒng)一處理方法及統(tǒng)一業(yè)務(wù)平臺(tái)。
背景技術(shù):
目前,隨著計(jì)算機(jī)及互聯(lián)網(wǎng)技術(shù)的迅速發(fā)展,特別是近年來云計(jì)算在通訊行業(yè)上的應(yīng)用,極大地推動(dòng)了移動(dòng)增值業(yè)務(wù)的發(fā)展,越來越多的運(yùn)營商推出了迎合市場(chǎng)的各 種移動(dòng)增值業(yè)務(wù),例如短信業(yè)務(wù)、彩信業(yè)務(wù)、應(yīng)用服務(wù)供應(yīng)商(Application Service Provider,簡(jiǎn)稱為ASP)業(yè)務(wù)、以及新發(fā)展的手機(jī)查詢業(yè)務(wù)、互聯(lián)網(wǎng)搜索業(yè)務(wù)等。對(duì)于同一個(gè)運(yùn)營商,如果按照現(xiàn)有的業(yè)務(wù)運(yùn)營模式,對(duì)于不同的業(yè)務(wù)需要進(jìn)行單 獨(dú)配置設(shè)備和單獨(dú)建設(shè)業(yè)務(wù)系統(tǒng)。從系統(tǒng)的配置、日常的業(yè)務(wù)運(yùn)行、系統(tǒng)監(jiān)控、到人員安排 都是互相獨(dú)立的,每個(gè)業(yè)務(wù)各自維護(hù)各自的一套系統(tǒng)。此外,對(duì)于同一運(yùn)營商而言,各個(gè)業(yè) 務(wù)系統(tǒng)對(duì)系統(tǒng)配置、用戶數(shù)據(jù)等基礎(chǔ)數(shù)據(jù)無法共享,從而造成維護(hù)成本及運(yùn)營上的極大冗 余與不便。
發(fā)明內(nèi)容
本發(fā)明提供一種多業(yè)務(wù)統(tǒng)一處理方法及統(tǒng)一業(yè)務(wù)平臺(tái),用以解決現(xiàn)有技術(shù)中同一 運(yùn)營商對(duì)于不同業(yè)務(wù)需要單獨(dú)建立系統(tǒng)配置設(shè)備,以及各個(gè)業(yè)務(wù)系統(tǒng)對(duì)于基礎(chǔ)數(shù)據(jù)無法共 享的問題。本發(fā)明提供一種多業(yè)務(wù)統(tǒng)一處理方法,包括如下處理在統(tǒng)一業(yè)務(wù)平臺(tái)啟動(dòng)時(shí)對(duì)各個(gè)子業(yè)務(wù)動(dòng)態(tài)鏈接庫進(jìn)行注冊(cè),并為運(yùn)行各個(gè)子業(yè)務(wù) 動(dòng)態(tài)鏈接庫分配相應(yīng)的系統(tǒng)資源;通過統(tǒng)一業(yè)務(wù)平臺(tái)的統(tǒng)一業(yè)務(wù)受理接口接收用戶發(fā)送的業(yè)務(wù)消息,將業(yè)務(wù)消息轉(zhuǎn) 換成預(yù)定結(jié)構(gòu),并將轉(zhuǎn)換成預(yù)定結(jié)構(gòu)的業(yè)務(wù)消息轉(zhuǎn)發(fā)給相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫,由相應(yīng) 的子業(yè)務(wù)動(dòng)態(tài)鏈接庫對(duì)轉(zhuǎn)換成預(yù)定結(jié)構(gòu)的業(yè)務(wù)消息進(jìn)行處理,并發(fā)送給相應(yīng)的業(yè)務(wù)系統(tǒng);根據(jù)業(yè)務(wù)系統(tǒng)的查詢請(qǐng)求,通過統(tǒng)一業(yè)務(wù)平臺(tái)的數(shù)據(jù)庫接口模塊獲取內(nèi)存數(shù)據(jù)庫 中的基礎(chǔ)數(shù)據(jù),并將基礎(chǔ)數(shù)據(jù)反饋到相應(yīng)的業(yè)務(wù)系統(tǒng)。本發(fā)明還提供一種統(tǒng)一業(yè)務(wù)平臺(tái),包括注冊(cè)模塊,用于啟動(dòng)時(shí)對(duì)各個(gè)子業(yè)務(wù)動(dòng)態(tài)鏈接庫進(jìn)行注冊(cè),并為運(yùn)行各個(gè)子業(yè)務(wù) 動(dòng)態(tài)鏈接庫分配相應(yīng)的系統(tǒng)資源;統(tǒng)一業(yè)務(wù)受理接口,用于接收用戶發(fā)送的業(yè)務(wù)消息,將業(yè)務(wù)消息轉(zhuǎn)換成預(yù)定結(jié)構(gòu), 并將轉(zhuǎn)換成預(yù)定結(jié)構(gòu)的業(yè)務(wù)消息轉(zhuǎn)發(fā)給相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫,由相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈 接庫對(duì)轉(zhuǎn)換成預(yù)定結(jié)構(gòu)的業(yè)務(wù)消息進(jìn)行處理,并發(fā)送給相應(yīng)的業(yè)務(wù)系統(tǒng);數(shù)據(jù)庫接口模塊,用于根據(jù)業(yè)務(wù)系統(tǒng)的查詢請(qǐng)求,獲取內(nèi)存數(shù)據(jù)庫模塊中的基礎(chǔ) 數(shù)據(jù),并將基礎(chǔ)數(shù)據(jù)反饋到相應(yīng)的業(yè)務(wù)系統(tǒng);內(nèi)存數(shù)據(jù)庫模塊,用于存儲(chǔ)基礎(chǔ)數(shù)據(jù)。
本發(fā)明有益效果如下借助于本發(fā)明實(shí)施例的技術(shù)方案,通過在統(tǒng)一業(yè)務(wù)平臺(tái)上動(dòng)態(tài)加載多種業(yè)務(wù),解 決了現(xiàn)有技術(shù)中同一運(yùn)營商對(duì)于不同業(yè)務(wù)需要單獨(dú)建立系統(tǒng)配置設(shè)備的問題,通過數(shù)據(jù)庫 接口模塊對(duì)統(tǒng)一業(yè)務(wù)平臺(tái)的內(nèi)存數(shù)據(jù)庫進(jìn)行操作,解決了現(xiàn)有技術(shù)中各個(gè)業(yè)務(wù)系統(tǒng)對(duì)于基 礎(chǔ)數(shù)據(jù)無法共享的問題。提高了系統(tǒng)的動(dòng)態(tài)擴(kuò)展性能,在一定程度上減少了系統(tǒng)硬件的投 入與配置,能夠有效地降低項(xiàng)目的成本。
圖1是根據(jù)本發(fā)明實(shí)施例的多業(yè)務(wù)統(tǒng)一處理方法的流程圖;圖2是本發(fā)明實(shí)施例的內(nèi)部消息的TLV結(jié)構(gòu)示意圖;圖3是根據(jù)本發(fā)明實(shí)施例的統(tǒng)一業(yè)務(wù)平臺(tái)的結(jié)構(gòu)示意圖;圖4是根據(jù)本發(fā)明實(shí)施例的統(tǒng)一業(yè)務(wù)平臺(tái)的優(yōu)選結(jié)構(gòu)示意圖。
具體實(shí)施例方式如上所述,近幾年來,運(yùn)營商提出了在一個(gè)業(yè)務(wù)平臺(tái)下靈活掛接所有子業(yè)務(wù)系統(tǒng) 的要求。該業(yè)務(wù)平臺(tái)需要能夠具有良好的動(dòng)態(tài)擴(kuò)展功能,并且能夠方便運(yùn)營商平穩(wěn)及時(shí)地 增減不同的子業(yè)務(wù)系統(tǒng)。為了達(dá)到上述要求,本發(fā)明提供了一種多業(yè)務(wù)統(tǒng)一處理方法及統(tǒng)一業(yè)務(wù)平臺(tái),該 多業(yè)務(wù)統(tǒng)一處理方法能夠動(dòng)態(tài)加載多種業(yè)務(wù),可以盡量減少原系統(tǒng)的變動(dòng),使原系統(tǒng)能平 穩(wěn)地掛接新的子業(yè)務(wù)系統(tǒng)。同時(shí)對(duì)系統(tǒng)共用的基礎(chǔ)數(shù)據(jù),例如用戶數(shù)據(jù),采用全內(nèi)存數(shù)據(jù) 庫的方式實(shí)現(xiàn)數(shù)據(jù)的共享與高效性,對(duì)于各子業(yè)務(wù)私有的數(shù)據(jù)則由各子業(yè)務(wù)自行決定。從 而達(dá)到能夠動(dòng)態(tài)增減業(yè)務(wù)的功能,同時(shí)對(duì)基礎(chǔ)數(shù)據(jù)的操作提供高效的處理性能。以下結(jié)合附圖以及兩個(gè)實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所 描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不限定本發(fā)明。方法實(shí)施例根據(jù)本發(fā)明的實(shí)施例,提供了一種多業(yè)務(wù)統(tǒng)一處理方法,圖1是根據(jù)本發(fā)明實(shí)施 例的多業(yè)務(wù)統(tǒng)一處理方法的流程圖,如圖1所示,根據(jù)本發(fā)明實(shí)施例的多業(yè)務(wù)統(tǒng)一處理方 法包括如下處理步驟101,在統(tǒng)一業(yè)務(wù)平臺(tái)啟動(dòng)時(shí)對(duì)各個(gè)子業(yè)務(wù)動(dòng)態(tài)鏈接庫進(jìn)行注冊(cè),并為運(yùn)行各 個(gè)子業(yè)務(wù)動(dòng)態(tài)鏈接庫分配相應(yīng)的系統(tǒng)資源;需要說明的是,在本發(fā)明實(shí)施例中,統(tǒng)一業(yè)務(wù)平臺(tái)需要負(fù)責(zé)整個(gè)業(yè)務(wù)系統(tǒng)的管理, 包括系統(tǒng)參數(shù)的配置、用戶數(shù)據(jù)的統(tǒng)一受理、以及各種業(yè)務(wù)消息的接收與轉(zhuǎn)發(fā)。在執(zhí)行步驟101之前,各子業(yè)務(wù)需要將其功能塊制作成一個(gè)動(dòng)態(tài)鏈接庫文件(即, 上述各個(gè)子業(yè)務(wù)動(dòng)態(tài)鏈接庫),優(yōu)選地,動(dòng)態(tài)鏈接庫文件可以為dll文件;在步驟101中, 如果需要新增一個(gè)子業(yè)務(wù),則在統(tǒng)一業(yè)務(wù)平臺(tái)啟動(dòng)時(shí),進(jìn)行動(dòng)態(tài)加載。如果不需要此子業(yè) 務(wù),則不進(jìn)行加載。各子業(yè)務(wù)動(dòng)態(tài)鏈接庫可以采用獨(dú)立線程的方式在系統(tǒng)啟動(dòng)時(shí)進(jìn)行注 冊(cè)(即,可以采用獨(dú)立線程的方式在統(tǒng)一業(yè)務(wù)平臺(tái)啟動(dòng)時(shí)對(duì)各個(gè)子業(yè)務(wù)動(dòng)態(tài)鏈接庫進(jìn)行注 冊(cè)),并申請(qǐng)運(yùn)行該子業(yè)務(wù)動(dòng)態(tài)鏈接庫所用的系統(tǒng)資源。步驟102,通過統(tǒng)一業(yè)務(wù)平臺(tái)的統(tǒng)一業(yè)務(wù)受理接口接收用戶發(fā)送的業(yè)務(wù)消息,將業(yè)務(wù)消息轉(zhuǎn)換成預(yù)定結(jié)構(gòu),并將轉(zhuǎn)換成預(yù)定結(jié)構(gòu)的業(yè)務(wù)消息轉(zhuǎn)發(fā)給相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫,由相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫對(duì)轉(zhuǎn)換成預(yù)定結(jié)構(gòu)的業(yè)務(wù)消息進(jìn)行處理,并發(fā)送給相應(yīng)的 業(yè)務(wù)系統(tǒng);需要說明的是,預(yù)定結(jié)構(gòu)為三元?jiǎng)討B(tài)結(jié)構(gòu)(S卩,TLV結(jié)構(gòu)),三元?jiǎng)討B(tài)結(jié)構(gòu)包括類 型、長度、以及值;也就是說,統(tǒng)一業(yè)務(wù)平臺(tái)對(duì)于內(nèi)部各子業(yè)務(wù)的請(qǐng)求消息結(jié)構(gòu)采用TLV的動(dòng)態(tài)結(jié)構(gòu) 方式。TLV是一種可變的編碼格式,是一個(gè)TLV的三元組,其中,T表示類型(type或tag)、 L表示長度(length)、V表示值(value)。每增加一種新業(yè)務(wù),需要在消息結(jié)構(gòu)里加上此業(yè) 務(wù)的TLV結(jié)構(gòu)。在消息處理時(shí)統(tǒng)一由統(tǒng)一業(yè)務(wù)平臺(tái)解析出相應(yīng)的業(yè)務(wù)結(jié)構(gòu),并發(fā)送給相應(yīng) 的子業(yè)務(wù)進(jìn)行處理。圖2是本發(fā)明實(shí)施例的內(nèi)部消息的TLV結(jié)構(gòu)示意圖,如圖2所示,內(nèi)部消息的TLV 結(jié)構(gòu)由總消息頭和多個(gè)TLV組成,其中,總消息頭中包含有控制數(shù)據(jù),每個(gè)子業(yè)務(wù)占用一個(gè) TLV,根據(jù)TYPE字段進(jìn)行區(qū)分。每個(gè)TLV結(jié)構(gòu)由結(jié)構(gòu)類型(type)、結(jié)構(gòu)長度(Length)和值 組成。Type和Length的長度固定,一般是2、4個(gè)字節(jié),在本發(fā)明實(shí)施例中,TLV結(jié)構(gòu)的解析 方法為步驟1,讀取type后進(jìn)行字節(jié)序轉(zhuǎn)換,用ntohldtohs轉(zhuǎn)換為主機(jī)字節(jié)序,得到類 型,指針偏移+2或4;步驟2,讀取length后進(jìn)行字節(jié)序轉(zhuǎn)換,用ntohKntohs轉(zhuǎn)換為主機(jī)字節(jié)序,得到 長度,指針偏移+2或4;步驟3,根據(jù)得到的長度讀取value,指針偏移+Length ;步驟4,繼續(xù)處理后面的TLV,直到解析出所有的TLV。此外,在步驟102中,可以由統(tǒng)一業(yè)務(wù)平臺(tái)的分發(fā)進(jìn)程或線程根據(jù)轉(zhuǎn)換成預(yù)定結(jié) 構(gòu)的業(yè)務(wù)消息的類型將業(yè)務(wù)消息發(fā)送到相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫的子業(yè)務(wù)線程。也就是 說,可以由統(tǒng)一業(yè)務(wù)平臺(tái)的分發(fā)進(jìn)程或線程根據(jù)業(yè)務(wù)的消息不同將相應(yīng)的業(yè)務(wù)發(fā)給對(duì)應(yīng)子 業(yè)務(wù)動(dòng)態(tài)鏈接庫里的子業(yè)務(wù)線程處理,各業(yè)務(wù)間互不影響。隨后,相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫的子業(yè)務(wù)線程對(duì)業(yè)務(wù)消息進(jìn)行格式轉(zhuǎn)換,將業(yè)務(wù) 消息由預(yù)定格式轉(zhuǎn)換成各個(gè)子業(yè)務(wù)系統(tǒng)能夠識(shí)別的業(yè)務(wù)消息。也就是說,各子業(yè)務(wù)動(dòng)態(tài)鏈 接庫負(fù)責(zé)按不同業(yè)務(wù)解析統(tǒng)一業(yè)務(wù)受理接口接收到的消息,并進(jìn)行消息格式轉(zhuǎn)換,轉(zhuǎn)換各 子業(yè)務(wù)自己的業(yè)務(wù)消息,分發(fā)給相應(yīng)的業(yè)務(wù)系統(tǒng),由業(yè)務(wù)系統(tǒng)進(jìn)行后續(xù)的業(yè)務(wù)處理。步驟103,根據(jù)業(yè)務(wù)系統(tǒng)的查詢請(qǐng)求,通過統(tǒng)一業(yè)務(wù)平臺(tái)的數(shù)據(jù)庫接口模塊獲取內(nèi) 存數(shù)據(jù)庫中的基礎(chǔ)數(shù)據(jù),并將基礎(chǔ)數(shù)據(jù)反饋到相應(yīng)的業(yè)務(wù)系統(tǒng)。需要說明的是,上述基礎(chǔ)數(shù)據(jù)包括用戶公共信息、用戶業(yè)務(wù)私有信息、公共配置 信息、以及公共基礎(chǔ)信息。統(tǒng)一業(yè)務(wù)平臺(tái)共用的基礎(chǔ)數(shù)據(jù)是指本平臺(tái)下所有業(yè)務(wù)共用的數(shù)據(jù),例如,基本的 系統(tǒng)配置參數(shù)數(shù)據(jù),用戶信息數(shù)據(jù)等。這些數(shù)據(jù)對(duì)于掛接的所有業(yè)務(wù)來說都是可見的,因此 對(duì)這部分?jǐn)?shù)據(jù)的操作會(huì)非常多,對(duì)性能要求非常高。為保證這部分的業(yè)務(wù)有高效的操作效 率,內(nèi)存數(shù)據(jù)庫需要定時(shí)將內(nèi)存數(shù)據(jù)同步到物理庫中,以保證數(shù)據(jù)一致性與安全性。在進(jìn)行了上述處理之后,根據(jù)本發(fā)明實(shí)施例的技術(shù)方案還可以進(jìn)行如下處理1、通過統(tǒng)一業(yè)務(wù)平臺(tái)的統(tǒng)一用戶受理接口對(duì)統(tǒng)一業(yè)務(wù)平臺(tái)的用戶公共信息、以及用戶業(yè)務(wù)私有信息進(jìn)行處理,并調(diào)用數(shù)據(jù)庫接口模塊對(duì)內(nèi)存數(shù)據(jù)庫進(jìn)行操作;也就是說,統(tǒng)一業(yè)務(wù)平臺(tái)的用戶信息由統(tǒng)一用戶受理接口進(jìn)行處理,統(tǒng)一用戶受理接口調(diào)用數(shù)據(jù)庫接口操作模塊對(duì)內(nèi)存數(shù)據(jù)庫進(jìn)行操作,各子業(yè)務(wù)在業(yè)務(wù)處理過程中可以 共享這些用戶數(shù)據(jù),在本發(fā)明實(shí)施例中,用戶數(shù)據(jù)信息分為二部分上述用戶公共信息對(duì)各業(yè)務(wù)共享通用的信息屬性,子業(yè)務(wù)只有查詢權(quán)限,由統(tǒng)一 用戶受理接口統(tǒng)一進(jìn)行變改操作。上述用戶業(yè)務(wù)私有信息本業(yè)務(wù)獨(dú)有的用戶信息屬性,子業(yè)務(wù)具有增刪改查權(quán)限。2、通過統(tǒng)一業(yè)務(wù)平臺(tái)的統(tǒng)一系統(tǒng)配置接口對(duì)統(tǒng)一業(yè)務(wù)平臺(tái)的公共配置信息、以及 公共基礎(chǔ)信息進(jìn)行處理,并調(diào)用數(shù)據(jù)庫接口模塊對(duì)內(nèi)存數(shù)據(jù)庫進(jìn)行操作。也就是說,系統(tǒng)公 共基礎(chǔ)數(shù)據(jù)(公共配置信息、以及公共基礎(chǔ)信息)由統(tǒng)一配置接口模塊進(jìn)行處理,存入內(nèi)存 數(shù)據(jù)庫中,由各子業(yè)務(wù)查詢使用。需要說明的是,本發(fā)明實(shí)施例中的內(nèi)存數(shù)據(jù)庫實(shí)現(xiàn)的方式有很多,現(xiàn)有技術(shù)中有 很多成熟的實(shí)現(xiàn)方法,在此不作詳細(xì)說明。從上述處理可以看出,本發(fā)明實(shí)施例通過動(dòng)態(tài)加載不同的業(yè)務(wù)庫來支持不同的業(yè) 務(wù),并最大可能的利用了內(nèi)存操作速度高于磁盤操作的特點(diǎn),提高了系統(tǒng)的數(shù)據(jù)處理性能, 并保證了系統(tǒng)的靈活擴(kuò)展性和性能。裝置實(shí)施例根據(jù)本發(fā)明的實(shí)施例,提供了 一種統(tǒng)一業(yè)務(wù)平臺(tái),在本發(fā)明實(shí)施例中,統(tǒng)一業(yè)務(wù)平 臺(tái)需要負(fù)責(zé)整個(gè)業(yè)務(wù)系統(tǒng)的管理,包括以下至少之一系統(tǒng)參數(shù)的配置、用戶數(shù)據(jù)的統(tǒng)一受 理、以及各種業(yè)務(wù)消息的接收與轉(zhuǎn)發(fā)。圖3是根據(jù)本發(fā)明實(shí)施例的統(tǒng)一業(yè)務(wù)平臺(tái)的結(jié)構(gòu)示 意圖,如圖3所示,根據(jù)本發(fā)明實(shí)施例的統(tǒng)一業(yè)務(wù)平臺(tái)包括注冊(cè)模塊30、統(tǒng)一業(yè)務(wù)受理接 口 31、數(shù)據(jù)庫接口模塊32、內(nèi)存數(shù)據(jù)庫模塊33。下面,對(duì)本發(fā)明實(shí)施例的統(tǒng)一業(yè)務(wù)平臺(tái)進(jìn)行 詳細(xì)說明。注冊(cè)模塊30用于啟動(dòng)時(shí)對(duì)各個(gè)子業(yè)務(wù)動(dòng)態(tài)鏈接庫進(jìn)行注冊(cè),并為運(yùn)行各個(gè)子業(yè) 務(wù)動(dòng)態(tài)鏈接庫分配相應(yīng)的系統(tǒng)資源;從另一角度說,各子業(yè)務(wù)需要將其功能塊制作成一個(gè)動(dòng)態(tài)鏈接庫文件(S卩,上述 各個(gè)子業(yè)務(wù)動(dòng)態(tài)鏈接庫),優(yōu)選地,動(dòng)態(tài)鏈接庫文件可以為dll文件;如果需要新增一個(gè)子 業(yè)務(wù),則在統(tǒng)一業(yè)務(wù)平臺(tái)啟動(dòng)時(shí),進(jìn)行動(dòng)態(tài)加載。如果不需要此子業(yè)務(wù),則不進(jìn)行加載。各 子業(yè)務(wù)動(dòng)態(tài)鏈接庫可以采用獨(dú)立線程的方式在系統(tǒng)啟動(dòng)時(shí)進(jìn)行注冊(cè)(即,注冊(cè)模塊30可以 采用獨(dú)立線程的方式在統(tǒng)一業(yè)務(wù)平臺(tái)啟動(dòng)時(shí)對(duì)各個(gè)子業(yè)務(wù)動(dòng)態(tài)鏈接庫進(jìn)行注冊(cè)),并申請(qǐng) 運(yùn)行該子業(yè)務(wù)動(dòng)態(tài)鏈接庫所用的系統(tǒng)資源。優(yōu)選地,在實(shí)際應(yīng)用中,注冊(cè)模塊30可以集成在統(tǒng)一業(yè)務(wù)受理接口 31中實(shí)現(xiàn)。統(tǒng)一業(yè)務(wù)受理接口 31用于接收用戶發(fā)送的業(yè)務(wù)消息,將業(yè)務(wù)消息轉(zhuǎn)換成預(yù)定結(jié) 構(gòu),并將轉(zhuǎn)換成預(yù)定結(jié)構(gòu)的業(yè)務(wù)消息轉(zhuǎn)發(fā)給相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫,由相應(yīng)的子業(yè)務(wù)動(dòng) 態(tài)鏈接庫對(duì)轉(zhuǎn)換成預(yù)定結(jié)構(gòu)的業(yè)務(wù)消息進(jìn)行處理,并發(fā)送給相應(yīng)的業(yè)務(wù)系統(tǒng);需要說明的是,預(yù)定結(jié)構(gòu)為三元?jiǎng)討B(tài)結(jié)構(gòu)(即,TLV結(jié)構(gòu)),三元?jiǎng)討B(tài)結(jié)構(gòu)包括類 型、長度、以及值;也就是說,統(tǒng)一業(yè)務(wù)平臺(tái)的統(tǒng)一業(yè)務(wù)受理接口 31對(duì)于內(nèi)部各子業(yè)務(wù)的請(qǐng)求消息 結(jié)構(gòu)采用TLV的動(dòng)態(tài)結(jié)構(gòu)方式。TLV是一種可變的編碼格式,是一個(gè)TLV的三元組,其中,T表示類型(type或tag)、L表示長度(length)、V表示值(value)。每增加一種新業(yè)務(wù),需要在消息結(jié)構(gòu)里加上此業(yè)務(wù)的TLV結(jié)構(gòu)。在消息處理時(shí)統(tǒng)一由統(tǒng)一業(yè)務(wù)平臺(tái)的統(tǒng)一業(yè)務(wù)受 理接口 31解析出相應(yīng)的業(yè)務(wù)結(jié)構(gòu),并發(fā)送給相應(yīng)的子業(yè)務(wù)進(jìn)行處理。如圖2所示,內(nèi)部消息的TLV結(jié)構(gòu)由總消息頭和多個(gè)TLV組成,其中,總消息頭中 包含有控制數(shù)據(jù),每個(gè)子業(yè)務(wù)占用一個(gè)TLV,根據(jù)TYPE字段進(jìn)行區(qū)分。每個(gè)TLV結(jié)構(gòu)由結(jié)構(gòu) 類型(type)、結(jié)構(gòu)長度(Length)和值組成。Type和Length的長度固定,一般是2、4個(gè)字 節(jié),在本發(fā)明實(shí)施例中,TLV結(jié)構(gòu)的解析方法為步驟1,讀取type后進(jìn)行字節(jié)序轉(zhuǎn)換,用ntohKntohs轉(zhuǎn)換為主機(jī)字節(jié)序,得到類 型,指針偏移+2或4;步驟2,讀取length后進(jìn)行字節(jié)序轉(zhuǎn)換,用ntohKntohs轉(zhuǎn)換為主機(jī)字節(jié)序,得到 長度,指針偏移+2或4;步驟3,根據(jù)得到的長度讀取value,指針偏移+Length ;步驟4,繼續(xù)處理后面的TLV,直到解析出所有的TLV。此外,可以由統(tǒng)一業(yè)務(wù)受理接口 31的分發(fā)進(jìn)程或線程根據(jù)轉(zhuǎn)換成預(yù)定結(jié)構(gòu)的業(yè) 務(wù)消息的類型將業(yè)務(wù)消息發(fā)送到相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫的子業(yè)務(wù)線程。也就是說,可以 由統(tǒng)一業(yè)務(wù)平臺(tái)的分發(fā)進(jìn)程或線程根據(jù)業(yè)務(wù)的消息不同將相應(yīng)的業(yè)務(wù)發(fā)給對(duì)應(yīng)子業(yè)務(wù)動(dòng) 態(tài)鏈接庫里的子業(yè)務(wù)線程處理,各業(yè)務(wù)間互不影響。隨后,相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫的子業(yè)務(wù)線程對(duì)業(yè)務(wù)消息進(jìn)行格式轉(zhuǎn)換,將業(yè)務(wù) 消息由預(yù)定格式轉(zhuǎn)換成各個(gè)子業(yè)務(wù)系統(tǒng)能夠識(shí)別的業(yè)務(wù)消息。也就是說,各子業(yè)務(wù)動(dòng)態(tài)鏈 接庫負(fù)責(zé)按不同業(yè)務(wù)解析統(tǒng)一業(yè)務(wù)受理接口 31接收到的消息,并進(jìn)行消息格式轉(zhuǎn)換,轉(zhuǎn)換 各子業(yè)務(wù)自己的業(yè)務(wù)消息,分發(fā)給相應(yīng)的業(yè)務(wù)系統(tǒng),由業(yè)務(wù)系統(tǒng)進(jìn)行后續(xù)的業(yè)務(wù)處理。數(shù)據(jù)庫接口模塊32用于根據(jù)業(yè)務(wù)系統(tǒng)的查詢請(qǐng)求,獲取內(nèi)存數(shù)據(jù)庫模塊33中的 基礎(chǔ)數(shù)據(jù),并將基礎(chǔ)數(shù)據(jù)反饋到相應(yīng)的業(yè)務(wù)系統(tǒng);內(nèi)存數(shù)據(jù)庫模塊33用于存儲(chǔ)基礎(chǔ)數(shù)據(jù)。需要說明的是,上述基礎(chǔ)數(shù)據(jù)包括用戶 公共信息、用戶業(yè)務(wù)私有信息、公共配置信息、以及公共基礎(chǔ)信息。統(tǒng)一業(yè)務(wù)平臺(tái)共用的基礎(chǔ)數(shù)據(jù)是指本平臺(tái)下所有業(yè)務(wù)共用的數(shù)據(jù),例如,基本的 系統(tǒng)配置參數(shù)數(shù)據(jù),用戶信息數(shù)據(jù)等。這些數(shù)據(jù)對(duì)于掛接的所有業(yè)務(wù)來說都是可見的,因 此對(duì)這部分?jǐn)?shù)據(jù)的操作會(huì)非常多,對(duì)性能要求非常高。為保證這部分的業(yè)務(wù)有高效的操作 效率,內(nèi)存數(shù)據(jù)庫33需要定時(shí)將內(nèi)存數(shù)據(jù)同步到物理數(shù)據(jù)庫中,以保證數(shù)據(jù)一致性與安全 性。需要說明的是,本發(fā)明實(shí)施例中的內(nèi)存數(shù)據(jù)庫實(shí)現(xiàn)的方式有很多,現(xiàn)有技術(shù)中有 很多成熟的實(shí)現(xiàn)方法,在此不作詳細(xì)說明。優(yōu)選地,圖4是根據(jù)本發(fā)明實(shí)施例的統(tǒng)一業(yè)務(wù)平臺(tái)的優(yōu)選結(jié)構(gòu)示意圖,如圖4所 示,在本發(fā)明實(shí)施例中,統(tǒng)一業(yè)務(wù)平臺(tái)除了包括統(tǒng)一業(yè)務(wù)受理接口、數(shù)據(jù)庫接口模塊、內(nèi)存 數(shù)據(jù)庫模塊、物理數(shù)據(jù)庫以外,還可以包括統(tǒng)一用戶受理接口、以及統(tǒng)一系統(tǒng)配置接口。統(tǒng)一用戶受理接口,用于對(duì)統(tǒng)一業(yè)務(wù)平臺(tái)的用戶公共信息、以及用戶業(yè)務(wù)私有信 息進(jìn)行處理,并調(diào)用數(shù)據(jù)庫接口模塊對(duì)內(nèi)存數(shù)據(jù)庫進(jìn)行操作;也就是說,統(tǒng)一業(yè)務(wù)平臺(tái)的用戶信息由統(tǒng)一用戶受理接口進(jìn)行處理,統(tǒng)一用戶受 理接口調(diào)用數(shù)據(jù)庫接口操作模塊對(duì)內(nèi)存數(shù)據(jù)庫進(jìn)行操作,各子業(yè)務(wù)在業(yè)務(wù)處理過程中可以共享這些用戶數(shù)據(jù),在本發(fā)明實(shí)施例中,用戶數(shù)據(jù)信息分為二部分上述用戶公共信息對(duì)各業(yè)務(wù)共享通用的信息屬性,子業(yè)務(wù)只有查詢權(quán)限,由統(tǒng)一 用戶受理接口統(tǒng)一進(jìn)行變改操作。上述用戶業(yè)務(wù)私有信息本業(yè)務(wù)獨(dú)有的用戶信息屬性,子業(yè)務(wù)具有增刪改查權(quán)限。統(tǒng)一系統(tǒng)配置接口,用于對(duì)統(tǒng)一業(yè)務(wù)平臺(tái)的公共配置信息、以及公共基礎(chǔ)信息進(jìn) 行處理,并調(diào)用數(shù)據(jù)庫接口模塊對(duì)內(nèi)存數(shù)據(jù)庫進(jìn)行操作。也就是說,系統(tǒng)公共基礎(chǔ)數(shù)據(jù)(公 共配置信息、以及公共基礎(chǔ)信息)由統(tǒng)一配置接口模塊進(jìn)行處理,存入內(nèi)存數(shù)據(jù)庫中,由各 子業(yè)務(wù)查詢使用。借助于本發(fā)明實(shí)施例的技術(shù)方案,通過在統(tǒng)一業(yè)務(wù)平臺(tái)上動(dòng)態(tài)加載多種業(yè)務(wù),解 決了現(xiàn)有技術(shù)中同一運(yùn)營商對(duì)于不同業(yè)務(wù)需要單獨(dú)建立系統(tǒng)配置設(shè)備的問題,通過數(shù)據(jù)庫 接口模塊對(duì)統(tǒng)一業(yè)務(wù)平臺(tái)的內(nèi)存數(shù)據(jù)庫進(jìn)行操作,解決了現(xiàn)有技術(shù)中各個(gè)業(yè)務(wù)系統(tǒng)對(duì)于基 礎(chǔ)數(shù)據(jù)無法共享的問題。提高了系統(tǒng)的動(dòng)態(tài)擴(kuò)展性能,在一定程度上減少了系統(tǒng)硬件的投 入與配置,能夠有效地降低項(xiàng)目的成本。盡管為示例目的,已經(jīng)公開了本發(fā)明的優(yōu)選實(shí)施例,本領(lǐng)域的技術(shù)人員將意識(shí)到 各種改進(jìn)、增加和取代也是可能的,因此,本發(fā)明的范圍應(yīng)當(dāng)不限于上述實(shí)施例。
權(quán)利要求
一種多業(yè)務(wù)統(tǒng)一處理方法,其特征在于,包括以下處理在統(tǒng)一業(yè)務(wù)平臺(tái)啟動(dòng)時(shí)對(duì)各個(gè)子業(yè)務(wù)動(dòng)態(tài)鏈接庫進(jìn)行注冊(cè),并為運(yùn)行所述各個(gè)子業(yè)務(wù)動(dòng)態(tài)鏈接庫分配相應(yīng)的系統(tǒng)資源;通過所述統(tǒng)一業(yè)務(wù)平臺(tái)的統(tǒng)一業(yè)務(wù)受理接口接收用戶發(fā)送的業(yè)務(wù)消息,將所述業(yè)務(wù)消息轉(zhuǎn)換成預(yù)定結(jié)構(gòu),并將轉(zhuǎn)換成預(yù)定結(jié)構(gòu)的所述業(yè)務(wù)消息轉(zhuǎn)發(fā)給相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫,由所述相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫對(duì)轉(zhuǎn)換成預(yù)定結(jié)構(gòu)的所述業(yè)務(wù)消息進(jìn)行處理,并發(fā)送給相應(yīng)的業(yè)務(wù)系統(tǒng);根據(jù)所述業(yè)務(wù)系統(tǒng)的查詢請(qǐng)求,通過所述統(tǒng)一業(yè)務(wù)平臺(tái)的數(shù)據(jù)庫接口模塊獲取內(nèi)存數(shù)據(jù)庫中的基礎(chǔ)數(shù)據(jù),并將所述基礎(chǔ)數(shù)據(jù)反饋到所述相應(yīng)的業(yè)務(wù)系統(tǒng)。
2.如權(quán)利要求1所述的方法,其特征在于,所述預(yù)定結(jié)構(gòu)為三元?jiǎng)討B(tài)結(jié)構(gòu),所述三元?jiǎng)討B(tài)結(jié)構(gòu)包括類型、長度、以及值;所述基礎(chǔ)數(shù)據(jù)包括用戶公共信息、用戶業(yè)務(wù)私有信息、公共配置信息、以及公共基礎(chǔ) fn息ο
3.如權(quán)利要求1所述的方法,其特征在于,所述在統(tǒng)一業(yè)務(wù)平臺(tái)啟動(dòng)時(shí)對(duì)各個(gè)子業(yè)務(wù) 動(dòng)態(tài)鏈接庫進(jìn)行注冊(cè)包括采用獨(dú)立線程的方式在所述統(tǒng)一業(yè)務(wù)平臺(tái)啟動(dòng)時(shí)對(duì)各個(gè)子業(yè)務(wù)動(dòng)態(tài)鏈接庫進(jìn)行注冊(cè)。
4.如權(quán)利要求2所述的方法,其特征在于,將轉(zhuǎn)換成預(yù)定結(jié)構(gòu)的所述業(yè)務(wù)消息轉(zhuǎn)發(fā)給 相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫包括由所述統(tǒng)一業(yè)務(wù)平臺(tái)的分發(fā)進(jìn)程或線程根據(jù)轉(zhuǎn)換成預(yù)定結(jié)構(gòu)的所述業(yè)務(wù)消息的類型 將所述業(yè)務(wù)消息發(fā)送到相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫的子業(yè)務(wù)線程。
5.如權(quán)利要求4所述的方法,其特征在于,所述相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫對(duì)轉(zhuǎn)換成預(yù) 定結(jié)構(gòu)的所述業(yè)務(wù)消息進(jìn)行處理包括所述相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫的子業(yè)務(wù)線程對(duì)所述業(yè)務(wù)消息進(jìn)行格式轉(zhuǎn)換,將所述業(yè) 務(wù)消息由所述預(yù)定格式轉(zhuǎn)換成各個(gè)子業(yè)務(wù)系統(tǒng)能夠識(shí)別的業(yè)務(wù)消息。
6.如權(quán)利要求2所述的方法,其特征在于,所述方法還包括通過所述統(tǒng)一業(yè)務(wù)平臺(tái)的統(tǒng)一用戶受理接口對(duì)所述統(tǒng)一業(yè)務(wù)平臺(tái)的所述用戶公共信 息、以及所述用戶業(yè)務(wù)私有信息進(jìn)行處理,并調(diào)用所述數(shù)據(jù)庫接口模塊對(duì)所述內(nèi)存數(shù)據(jù)庫 進(jìn)行操作;通過所述統(tǒng)一業(yè)務(wù)平臺(tái)的統(tǒng)一系統(tǒng)配置接口對(duì)所述統(tǒng)一業(yè)務(wù)平臺(tái)的所述公共配置信 息、以及所述公共基礎(chǔ)信息進(jìn)行處理,并調(diào)用所述數(shù)據(jù)庫接口模塊對(duì)所述內(nèi)存數(shù)據(jù)庫進(jìn)行 操作;通過所述統(tǒng)一業(yè)務(wù)平臺(tái)的內(nèi)存數(shù)據(jù)庫將所述基礎(chǔ)數(shù)據(jù)定時(shí)同步到物理數(shù)據(jù)庫中。
7.一種統(tǒng)一業(yè)務(wù)平臺(tái),其特征在于,包括注冊(cè)模塊,用于啟動(dòng)時(shí)對(duì)各個(gè)子業(yè)務(wù)動(dòng)態(tài)鏈接庫進(jìn)行注冊(cè),并為運(yùn)行所述各個(gè)子業(yè)務(wù) 動(dòng)態(tài)鏈接庫分配相應(yīng)的系統(tǒng)資源;統(tǒng)一業(yè)務(wù)受理接口,用于接收用戶發(fā)送的業(yè)務(wù)消息,將所述業(yè)務(wù)消息轉(zhuǎn)換成預(yù)定結(jié)構(gòu), 并將轉(zhuǎn)換成預(yù)定結(jié)構(gòu)的所述業(yè)務(wù)消息轉(zhuǎn)發(fā)給相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫,由所述相應(yīng)的子業(yè) 務(wù)動(dòng)態(tài)鏈接庫對(duì)轉(zhuǎn)換成預(yù)定結(jié)構(gòu)的所述業(yè)務(wù)消息進(jìn)行處理,并發(fā)送給相應(yīng)的業(yè)務(wù)系統(tǒng);數(shù)據(jù)庫接口模塊,用于根據(jù)所述業(yè)務(wù)系統(tǒng)的查詢請(qǐng)求,獲取內(nèi)存數(shù)據(jù)庫模塊中的基礎(chǔ)數(shù)據(jù),并將所述基礎(chǔ)數(shù)據(jù)反饋到所述相應(yīng)的業(yè)務(wù)系統(tǒng); 所述內(nèi)存數(shù)據(jù)庫模塊,用于存儲(chǔ)所述基礎(chǔ)數(shù)據(jù)。
8.如權(quán)利要求7所述的統(tǒng)一業(yè)務(wù)平臺(tái),其特征在于,所述預(yù)定結(jié)構(gòu)為三元?jiǎng)討B(tài)結(jié)構(gòu),所述三元?jiǎng)討B(tài)結(jié)構(gòu)包括類型、長度、以及值; 所述基礎(chǔ)數(shù)據(jù)包括用戶公共信息、用戶業(yè)務(wù)私有信息、公共配置信息、以及公共基礎(chǔ) fn息o
9.如權(quán)利要求7所述的統(tǒng)一業(yè)務(wù)平臺(tái),其特征在于,所述注冊(cè)模塊具體用于采用獨(dú)立線程的方式在所述統(tǒng)一業(yè)務(wù)平臺(tái)啟動(dòng)時(shí)對(duì)各個(gè)子業(yè) 務(wù)動(dòng)態(tài)鏈接庫進(jìn)行注冊(cè);所述統(tǒng)一業(yè)務(wù)受理接口具體用于由分發(fā)進(jìn)程或線程根據(jù)轉(zhuǎn)換成預(yù)定結(jié)構(gòu)的所述業(yè)務(wù) 消息的類型將所述業(yè)務(wù)消息發(fā)送到相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫的子業(yè)務(wù)線程,由所述相應(yīng)的 子業(yè)務(wù)動(dòng)態(tài)鏈接庫的子業(yè)務(wù)線程對(duì)所述業(yè)務(wù)消息進(jìn)行格式轉(zhuǎn)換,將所述業(yè)務(wù)消息由所述預(yù) 定格式轉(zhuǎn)換成各個(gè)子業(yè)務(wù)系統(tǒng)能夠識(shí)別的業(yè)務(wù)消息;所述內(nèi)存數(shù)據(jù)庫模塊還用于將所述基礎(chǔ)數(shù)據(jù)定時(shí)同步到物理數(shù)據(jù)庫中。
10.如權(quán)利要求7所述的統(tǒng)一業(yè)務(wù)平臺(tái),其特征在于,所述統(tǒng)一業(yè)務(wù)平臺(tái)還包括 統(tǒng)一用戶受理接口,用于對(duì)所述統(tǒng)一業(yè)務(wù)平臺(tái)的所述用戶公共信息、以及所述用戶業(yè)務(wù)私有信息進(jìn)行處理,并調(diào)用所述數(shù)據(jù)庫接口模塊對(duì)所述內(nèi)存數(shù)據(jù)庫進(jìn)行操作;統(tǒng)一系統(tǒng)配置接口,用于對(duì)所述統(tǒng)一業(yè)務(wù)平臺(tái)的所述公共配置信息、以及所述公共基 礎(chǔ)信息進(jìn)行處理,并調(diào)用所述數(shù)據(jù)庫接口模塊對(duì)所述內(nèi)存數(shù)據(jù)庫進(jìn)行操作。
全文摘要
本發(fā)明公開了一種多業(yè)務(wù)統(tǒng)一處理方法及統(tǒng)一業(yè)務(wù)平臺(tái),該方法包括在統(tǒng)一業(yè)務(wù)平臺(tái)啟動(dòng)時(shí)對(duì)各個(gè)子業(yè)務(wù)動(dòng)態(tài)鏈接庫進(jìn)行注冊(cè),并為運(yùn)行各個(gè)子業(yè)務(wù)動(dòng)態(tài)鏈接庫分配相應(yīng)的系統(tǒng)資源;通過統(tǒng)一業(yè)務(wù)平臺(tái)的統(tǒng)一業(yè)務(wù)受理接口接收用戶發(fā)送的業(yè)務(wù)消息,將業(yè)務(wù)消息轉(zhuǎn)換成預(yù)定結(jié)構(gòu),并將轉(zhuǎn)換成預(yù)定結(jié)構(gòu)的業(yè)務(wù)消息轉(zhuǎn)發(fā)給相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫,由相應(yīng)的子業(yè)務(wù)動(dòng)態(tài)鏈接庫對(duì)轉(zhuǎn)換成預(yù)定結(jié)構(gòu)的業(yè)務(wù)消息進(jìn)行處理,并發(fā)送給相應(yīng)的業(yè)務(wù)系統(tǒng);根據(jù)業(yè)務(wù)系統(tǒng)的查詢請(qǐng)求,通過統(tǒng)一業(yè)務(wù)平臺(tái)的數(shù)據(jù)庫接口模塊獲取內(nèi)存數(shù)據(jù)庫中的基礎(chǔ)數(shù)據(jù),并將基礎(chǔ)數(shù)據(jù)反饋到相應(yīng)的業(yè)務(wù)系統(tǒng)。通過上述處理,提高了系統(tǒng)的動(dòng)態(tài)擴(kuò)展性能,能夠有效地降低項(xiàng)目的成本。
文檔編號(hào)H04W88/18GK101827302SQ20101014972
公開日2010年9月8日 申請(qǐng)日期2010年4月19日 優(yōu)先權(quán)日2010年4月19日
發(fā)明者陶長標(biāo) 申請(qǐng)人:中興通訊股份有限公司