專利名稱:一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的方法及相關(guān)裝置、系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及接口領(lǐng)域,特別涉及一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的方法及相關(guān)裝置、系統(tǒng)。
背景技術(shù):
在現(xiàn)有的電信行業(yè)或者互聯(lián)網(wǎng)行業(yè),多系統(tǒng)之間的交互,一般采用企業(yè)級(jí)消息總線(ESB)來(lái)交互不同系統(tǒng)之間的消息,但是ESB并不能做到真正的統(tǒng)一接口,原因是ESB要求外圍系統(tǒng)的消息采用ESB自身要求的交互模式,而各個(gè)外圍系統(tǒng)的消息所采用的協(xié)議不盡相同,目前只能依靠外圍系統(tǒng)各自進(jìn)行消息的協(xié)議轉(zhuǎn)換以適應(yīng)ESB消息接口的要求。
隨著電信行業(yè)業(yè)務(wù)量的急劇增加,接入到核心運(yùn)行支持系統(tǒng)的外圍系統(tǒng)越來(lái)越多,出現(xiàn)各種紛繁復(fù)雜的接口協(xié)議,面對(duì)不同協(xié)議消息的接入和接出,按照目前ESB消息總線接口的要求,需要外圍系統(tǒng)各自有針對(duì)性的開發(fā)相應(yīng)協(xié)議的接口使其能夠通過(guò)ESB與核心運(yùn)行支持系統(tǒng)交互,導(dǎo)致相關(guān)業(yè)務(wù)的外圍系統(tǒng)花費(fèi)大量時(shí)間進(jìn)行接口處理的研發(fā)、接口處理的執(zhí)行和消息的管理,影響了外圍系統(tǒng)本身的效率。發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的在于提供一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的方法及相關(guān)裝置、系統(tǒng)以實(shí)現(xiàn)將各種協(xié)議的外圍系統(tǒng)的消息統(tǒng)一接入接出,不需要外圍系統(tǒng)進(jìn)行接口處理的目的。
本發(fā)明提供了一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的方法,該方法包括
接收第一外圍系統(tǒng)的接入消息;
根據(jù)所述接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則;
利用所述第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息;
將所述平臺(tái)消息發(fā)送至平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
可選地,所述接收第一外圍系統(tǒng)的接入消息具體通過(guò)監(jiān)聽各個(gè)接入端口的輸入接收。
可選地,在接收第一外圍系統(tǒng)的接入消息之前還驗(yàn)證第一外圍系統(tǒng)的IP地址,若驗(yàn)證通過(guò),建立與所述第一外圍系統(tǒng)的連接;
在建立與第一外圍系統(tǒng)的連接之后,還以預(yù)設(shè)的超時(shí)時(shí)間為周期向第一外圍系統(tǒng)發(fā)送心跳消息,若未收到返回的響應(yīng)消息,則斷開與所述第一外圍系統(tǒng)的連接;
或者,
在建立與第一外圍系統(tǒng)的連接之后,還記錄該連接的每次數(shù)據(jù)傳輸時(shí)間,計(jì)算上一次數(shù)據(jù)傳輸時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔,若時(shí)間間隔超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,則斷開與第一外圍系統(tǒng)的連接。
可選地,所述接收第一外圍系統(tǒng)的接入消息具體為在預(yù)設(shè)固定接入端口接收第一外圍系統(tǒng)的接入消息;
所述根據(jù)接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則具體為
根據(jù)接收接入消息的接入端口,獲得接入端口號(hào);
查詢接入端口號(hào)對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則。
可選地,所述根據(jù)接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則具體為
提取所述接入消息的關(guān)鍵特征;
查詢所述關(guān)鍵特征對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則。
可選地,所述第一轉(zhuǎn)換規(guī)則具體為
接入消息的協(xié)議所包括的字段名稱按照預(yù)定順序排列的第一列表;
平臺(tái)消息的協(xié)議所包括的字段名稱按照預(yù)定順序排列的第二列表;
所述接入消息的協(xié)議所包括的字段名稱與平臺(tái)消息所包括的字段名稱之間的對(duì)應(yīng)關(guān)系具體根據(jù)第一列表與第二列表所列的字段名稱順序?qū)?yīng)。
可選地,所述利用第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息具體為
按照第一列表所列出的字段名稱的順序,從接入消息中,提取相應(yīng)字段名稱的字段值;
從第二列表中,順序提取字段名稱;
將所述字段值,按照對(duì)應(yīng)順序,保存在從第二列表順序提取出的字段名稱所代表的字段中,組成平臺(tái)消息。
本發(fā)明還提供一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的裝置,包括
第一接收單元用于接收第一外圍系統(tǒng)的接入消息;
第一轉(zhuǎn)換單元用于根據(jù)所述接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則,利用所述第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息。
第一發(fā)送單元用于將所述平臺(tái)消息發(fā)送至平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
本發(fā)明又提供一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的方法,包括
接收平臺(tái)消息;
根據(jù)所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則;
利用所述第二轉(zhuǎn)換規(guī)則,將所述平臺(tái)消息轉(zhuǎn)換為接出消息;
將所述接出消息發(fā)送至所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
可選地,所述接收平臺(tái)消息具體為接收來(lái)自于固定端口號(hào)的平臺(tái)消息,其中,一個(gè)固定端口號(hào)對(duì)應(yīng)一個(gè)或多個(gè)已知的第二外圍系統(tǒng)的IP地址端口、對(duì)應(yīng)一個(gè)第二轉(zhuǎn)換規(guī)則;
所述根據(jù)平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則具體為
根據(jù)接收的平臺(tái)消息,獲得發(fā)出該平臺(tái)消息的端口號(hào);
查詢?cè)摱丝谔?hào)對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則。
可選地,所述根據(jù)平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則具體為
提取所述平臺(tái)消息的關(guān)鍵特征;
查詢所述關(guān)鍵特征對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則。
可選地,所述第二轉(zhuǎn)換規(guī)則具體為
平臺(tái)消息的協(xié)議所包括的字段名稱按照預(yù)定順序排列的第三列表;
第二外圍系統(tǒng)的協(xié)議所包括的字段名稱按照預(yù)定順序排列的第四列表;
平臺(tái)消息的協(xié)議所包括的字段名稱與第二外圍系統(tǒng)的協(xié)議所包括的字段名稱之間的對(duì)應(yīng)關(guān)系具體根據(jù)第三列表與第四列表所列的字段名稱順序?qū)?yīng)。
可選地,利用所述第二轉(zhuǎn)換規(guī)則,將平臺(tái)消息轉(zhuǎn)換為接出消息具體為
按照第三列表所列出的字段名稱的順序,從平臺(tái)消息中,提取相應(yīng)字段名稱的字段值;
從第四列表中,順序提取字段名稱;
將所述字段值,按照對(duì)應(yīng)順序,保存在從第四列表順序提取出的字段名稱所代表的字段中,組成接出消息。
可選地,所述將接出消息發(fā)送至平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)具體為
查詢發(fā)出該平臺(tái)消息的端口號(hào)對(duì)應(yīng)的第二外圍系統(tǒng)IP地址、端口 ;
根據(jù)第二外圍系統(tǒng)IP地址、端口,將所述接出消息發(fā)送至所述第二外圍系統(tǒng)。
可選地,所述將接出消息發(fā)送至平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)具體為
查詢?cè)撈脚_(tái)消息的關(guān)鍵特征對(duì)應(yīng)的第二外圍系統(tǒng)IP地址、端口 ;
根據(jù)第二外圍系統(tǒng)IP地址、端口,將所述接出消息發(fā)送至所述第二外圍系統(tǒng)。
可選地,將所述接出消息發(fā)送至所述第二外圍系統(tǒng)之前還根據(jù)第二外圍系統(tǒng)IP 地址、端口,建立與第二外圍系統(tǒng)的連接;
在建立與第二外圍系統(tǒng)的連接之后,還以預(yù)設(shè)的超時(shí)時(shí)間為周期向第二外圍系統(tǒng)發(fā)送心跳消息,若未收到返回的響應(yīng)消息,則斷開與所述第二外圍系統(tǒng)的連接;
或者,
在建立與第二外圍系統(tǒng)的連接之后,還記錄該連接的每次數(shù)據(jù)傳輸時(shí)間,計(jì)算上一次數(shù)據(jù)傳輸時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔,若時(shí)間間隔超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,則斷開與第二外圍系統(tǒng)的連接。
本發(fā)明再提供一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的裝置,包括
第二接收單元用于接收平臺(tái)消息;
第二轉(zhuǎn)換單元用于根據(jù)所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則,利用所述第二轉(zhuǎn)換規(guī)則,將所述平臺(tái)消息轉(zhuǎn)換為接出消息;
第二接出單元用于將所述接出消息發(fā)送至所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
本發(fā)明進(jìn)一步提供一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的方法,包括
接收第一外圍系統(tǒng)的接入消息;
根據(jù)所述接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則;
利用所述第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息;
根據(jù)所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則;
利用所述第二轉(zhuǎn)換規(guī)則,將所述平臺(tái)消息轉(zhuǎn)換為接出消息;
將所述接出消息發(fā)送至所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
可選地,所述接收第一外圍系統(tǒng)的接入消息具體通過(guò)監(jiān)聽各個(gè)接入端口的輸入接收。
可選地,在接收第一外圍系統(tǒng)的接入消息之前還建立與所述第一外圍系統(tǒng)的連接;
在建立與第一外圍系統(tǒng)的連接之后,還以預(yù)設(shè)的超時(shí)時(shí)間為周期向第一外圍系統(tǒng)發(fā)送心跳消息,若未收到返回的響應(yīng)消息,則斷開與所述第一外圍系統(tǒng)的連接;
或者,
在建立與第一外圍系統(tǒng)的連接之后,還記錄該連接的每次數(shù)據(jù)傳輸時(shí)間,計(jì)算上一次數(shù)據(jù)傳輸時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔,若時(shí)間間隔超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,則斷開與第一外圍系統(tǒng)的連接。
所述將接出消息發(fā)送至所述第二外圍系統(tǒng)之前還建立與第二外圍系統(tǒng)的連接;
在建立與第二外圍系統(tǒng)的連接之后,還以預(yù)設(shè)的超時(shí)時(shí)間為周期向第二外圍系統(tǒng)發(fā)送心跳消息,若未收到返回的響應(yīng)消息,則斷開與所述第二外圍系統(tǒng)的連接;
或者,
在建立與第二外圍系統(tǒng)的連接之后,還記錄該連接的每次數(shù)據(jù)傳輸時(shí)間,計(jì)算上一次數(shù)據(jù)傳輸時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔,若時(shí)間間隔超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,則斷開與第二外圍系統(tǒng)的連接。
可選地,所述利用第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息之后,根據(jù)所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則之前,還包括
將所述平臺(tái)消息發(fā)送至ESB服務(wù)總線;
在監(jiān)聽到ESB服務(wù)總線的消息隊(duì)列有所述平臺(tái)消息時(shí),從消息隊(duì)列獲得所述平臺(tái)消息。
本發(fā)明進(jìn)一步提供一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的系統(tǒng),包括
接入模塊用于接收第一外圍系統(tǒng)的接入消息,根據(jù)所述接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則,利用所述第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消
接出模塊用于根據(jù)所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則,利用所述第二轉(zhuǎn)換規(guī)則,將所述平臺(tái)消息轉(zhuǎn)換為接出消息, 將所述接出消息發(fā)送至所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
可選地,所述接入模塊還用于監(jiān)聽各個(gè)接入端口的輸入,在監(jiān)聽到接入端口的輸入時(shí),接收接入消息。
可選地,所述接入模塊還用于在接收第一外圍系統(tǒng)的接入消息之前建立與所述第一外圍系統(tǒng)的連接,在建立與第一外圍系統(tǒng)的連接之后,還以預(yù)設(shè)的超時(shí)時(shí)間為周期向第一外圍系統(tǒng)發(fā)送心跳消息,若未收到返回的響應(yīng)消息,則斷開與所述第一外圍系統(tǒng)的連接;或者,在建立與第一外圍系統(tǒng)的連接之后,還記錄該連接的每次數(shù)據(jù)傳輸時(shí)間,計(jì)算上一次數(shù)據(jù)傳輸時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔,若時(shí)間間隔超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,則斷開與第一外圍系統(tǒng)的連接。
所述接出模塊還用于在將接出消息發(fā)送至所述第二外圍系統(tǒng)之前建立與第二外圍系統(tǒng)的連接,在建立與第二外圍系統(tǒng)的連接之后,還以預(yù)設(shè)的超時(shí)時(shí)間為周期向第二外圍系統(tǒng)發(fā)送心跳消息,若未收到返回的響應(yīng)消息,則斷開與所述第二外圍系統(tǒng)的連接;或者,在建立與第二外圍系統(tǒng)的連接之后,還記錄該連接的每次數(shù)據(jù)傳輸時(shí)間,計(jì)算上一次數(shù)據(jù)傳輸時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔,若時(shí)間間隔超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,則斷開與第二外圍系統(tǒng)的連接。
可選地,該系統(tǒng)還包括ESB服務(wù)總線模塊具體用于緩存所述平臺(tái)消息;
接入模塊還用于將所述平臺(tái)消息發(fā)送至ESB服務(wù)總線模塊;
接出模塊還用于在監(jiān)聽到ESB服務(wù)總線的消息隊(duì)列有所述平臺(tái)消息時(shí),從ESB服務(wù)總線模塊的消息隊(duì)列獲得所述平臺(tái)消息。
可見本發(fā)明具有如下有益效果
由于本發(fā)明在接收第一外圍系統(tǒng)的接入消息后,根據(jù)接入消息所采用的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則,可以實(shí)現(xiàn)將一種消息協(xié)議對(duì)應(yīng)一種轉(zhuǎn)換規(guī)則, 將各種轉(zhuǎn)換規(guī)則集成,再利用接入消息的協(xié)議對(duì)應(yīng)的轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息,使得本發(fā)明在消息接入時(shí),所接收的外圍系統(tǒng)的消息可以是外圍系統(tǒng)本身協(xié)議的消息, 使得第一外圍系統(tǒng)在發(fā)出消息時(shí),不必關(guān)心消息的不同協(xié)議之間的轉(zhuǎn)換,可以直接發(fā)送本身協(xié)議的接入消息,減輕了第一外圍系統(tǒng)的接入接口處理負(fù)擔(dān);
另外,本發(fā)明在接收平臺(tái)消息后,根據(jù)平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則,再利用轉(zhuǎn)換規(guī)則,將平臺(tái)消息轉(zhuǎn)換為接出消息,因此可以在本發(fā)明實(shí)施時(shí)將一種消息協(xié)議對(duì)應(yīng)一種轉(zhuǎn)換規(guī)則,將各種轉(zhuǎn)換規(guī)則集成,使第二外圍系統(tǒng)在接收消息時(shí),不必關(guān)心消息的不同協(xié)議之間的轉(zhuǎn)換,可以直接收到本身協(xié)議的接出消息,減輕了外圍系統(tǒng)的接出接口處理負(fù)擔(dān);
而且,結(jié)合上述兩種分別對(duì)接入消息和平臺(tái)消息的接入接出方法,使得外圍系統(tǒng)在消息接入和接出時(shí)均不必關(guān)心消息的協(xié)議之間的轉(zhuǎn)換,可以直接發(fā)送或者接出本身協(xié)議的消息,減輕了外圍系統(tǒng)的接口處理負(fù)擔(dān)。
圖I是本發(fā)明提供的一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的方法實(shí)施例流程圖2是平臺(tái)消息的XML格式結(jié)構(gòu)示意圖3是本發(fā)明還提供的一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的裝置實(shí)施例組成圖4是本發(fā)明又提供的一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的方法實(shí)施例流程圖5是本發(fā)明再提供的一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的裝置實(shí)施例組成圖6是本發(fā)明進(jìn)一步提供的一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的方法實(shí)施例流程圖7是本發(fā)明進(jìn)一步提供的一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的系統(tǒng)實(shí)施例組成圖8是本發(fā)明提供的一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的系統(tǒng)另一實(shí)施例組成圖。
具體實(shí)施方式
為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和具體實(shí)施方式
對(duì)本發(fā)明實(shí)施例作進(jìn)一步詳細(xì)的說(shuō)明。
參見圖1,為本發(fā)明提供的一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的方法流程圖,如圖所示,該方法包括
S101、接收第一外圍系統(tǒng)的接入消息;
S102、根據(jù)所述接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則;
S103、利用所述第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息;
S104、將所述平臺(tái)消息發(fā)送至平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
需要說(shuō)明的是,在本發(fā)明中所述的平臺(tái)消息可以是本發(fā)明所實(shí)現(xiàn)的統(tǒng)一接口自定義的協(xié)議格式的消息,也可以是ESB服務(wù)總線自身要求的協(xié)議格式的消息,具體可以根據(jù)實(shí)施需求定義平臺(tái)消息的格式。
可見,在該方法中,由于在接收第一外圍系統(tǒng)的接入消息后,根據(jù)接入消息所采用的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則,可以實(shí)現(xiàn)將一種消息協(xié)議對(duì)應(yīng)一種轉(zhuǎn)換規(guī)則,將各種轉(zhuǎn)換規(guī)則集成,再利用接入消息的協(xié)議對(duì)應(yīng)的轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息,使得本發(fā)明在消息接入時(shí),所接收的外圍系統(tǒng)的消息可以是外圍系統(tǒng)本身協(xié)議的消息,使得第一外圍系統(tǒng)在發(fā)出消息時(shí),不必關(guān)心消息的不同協(xié)議之間的轉(zhuǎn)換,減輕了第一外圍系統(tǒng)的接口處理負(fù)擔(dān)。
如果所述接入消息為加密的消息,在讀取到所述接入消息后,該方法還可以包括 解密所述接入消息。
在接收第一外圍系統(tǒng)的接入消息之前,還可以包括驗(yàn)證第一外圍系統(tǒng)的IP地址,若驗(yàn)證通過(guò),建立與所述第一外圍系統(tǒng)的連接。
在這里,驗(yàn)證第一外圍系統(tǒng)的IP地址不僅可以包括驗(yàn)證第一外圍系統(tǒng)的IP地址是否有效,還可以包括驗(yàn)證第一外圍系統(tǒng)的IP地址是否有權(quán)限接入。
為了不造成連接資源的浪費(fèi),該實(shí)施例還可以包括在建立與第一外圍系統(tǒng)的連接之后,還以預(yù)設(shè)的超時(shí)時(shí)間為周期向第一外圍系統(tǒng)發(fā)送心跳消息,若未收到返回的響應(yīng)消息,則斷開與所述第一外圍系統(tǒng)的連接。
或者,
在建立與第一外圍系統(tǒng)的連接之后,記錄該連接的每次數(shù)據(jù)傳輸時(shí)間;
計(jì)算上一次數(shù)據(jù)傳輸時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔,若時(shí)間間隔超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,則斷開與第一外圍系統(tǒng)的連接。
在以上實(shí)施例中,可以預(yù)先創(chuàng)建多個(gè)連接對(duì)象,在建立與第一外圍系統(tǒng)的連接時(shí), 從預(yù)先創(chuàng)建的多個(gè)連接對(duì)象中選取空閑的連接對(duì)象實(shí)現(xiàn)與第一外圍系統(tǒng)的連接,并且將該連接對(duì)象狀態(tài)設(shè)置為繁忙,在斷開與第一外圍系統(tǒng)的連接時(shí),將該斷開連接的連接對(duì)象狀態(tài)設(shè)置為空閑。
其中,步驟S102所述根據(jù)接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則,具體地,可以包括兩個(gè)實(shí)施例
在一個(gè)實(shí)施例中,一個(gè)接入端口對(duì)應(yīng)一種協(xié)議的外圍系統(tǒng)的接入,具體地,在該實(shí)施例中,步驟SlOl所述接收第一外圍系統(tǒng)的接入消息具體為在預(yù)設(shè)固定接入端口接收第一外圍系統(tǒng)的接入消息。
相應(yīng)地,在該實(shí)施例中,步驟S102所述根據(jù)接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則具體可以包括以下步驟
根據(jù)接收的接入消息,獲得接入端口號(hào);
查詢接入端口號(hào)對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則。
在另一實(shí)施例中,接入消息所具有的關(guān)鍵特征對(duì)應(yīng)一種協(xié)議類型,關(guān)鍵特征可以為接入消息的消息體長(zhǎng)度,即一定長(zhǎng)度消息體的接入消息對(duì)應(yīng)一個(gè)第一轉(zhuǎn)換規(guī)則,或者關(guān)鍵特征也可以為接入消息的關(guān)鍵字,即接入消息的關(guān)鍵字對(duì)應(yīng)一個(gè)第一轉(zhuǎn)換規(guī)則,例如,關(guān)鍵字為接入消息的系統(tǒng)編碼字段值,系統(tǒng)編碼字段值對(duì)應(yīng)一個(gè)第一轉(zhuǎn)換規(guī)則,具體地,在該實(shí)施例中,步驟S102具體可以包括以下步驟
提取所述接入消息的關(guān)鍵特征;
查詢所述關(guān)鍵特征對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則。
具體采用以上哪一種實(shí)施方式可以在配置信息文件中配置,如果采用接入消息的字段所具有的關(guān)鍵特征對(duì)應(yīng)一種協(xié)議類型,具體提取的關(guān)鍵特征也可以在配置信息文件中配置。
下面,對(duì)第一轉(zhuǎn)換規(guī)則進(jìn)行解釋,在該方法的一個(gè)具體實(shí)施例中,所述第一轉(zhuǎn)換規(guī)則具體可以為
接入消息的協(xié)議所包括的字段名稱按照預(yù)定順序排列的第一列表;
平臺(tái)消息的協(xié)議所包括的字段名稱按照預(yù)定順序排列的第二列表;
所述接入消息的協(xié)議所包括的字段名稱與平臺(tái)消息所包括的字段名稱之間的對(duì)應(yīng)關(guān)系具體根據(jù)第一列表與第二列表所列的字段名稱順序?qū)?yīng)。
在該第一轉(zhuǎn)換規(guī)則的具體實(shí)施例中,所述步驟S103、利用所述第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息,具體包括以下步驟
S103. I、按照第一列表所列出的字段名稱的順序,從接入消息中,提取相應(yīng)字段名稱的字段值;
S103. 2、從第二列表中,順序提取字段名稱;
S103. 3、將所述字段值,按照對(duì)應(yīng)順序,保存在從第二列表順序提取出的字段名稱所代表的字段中,組成平臺(tái)消息。
其中,步驟S103之前,還可以包括驗(yàn)證所述接入消息格式是否符合所述待發(fā)消息的協(xié)議,如果符合,則驗(yàn)證通過(guò),執(zhí)行步驟S103,否則,驗(yàn)證失敗,返回接入消息錯(cuò)誤,具體地,例如,所述驗(yàn)證接入消息格式是否符合待發(fā)消息的協(xié)議,具體可以通過(guò)以下步驟驗(yàn)證
計(jì)算所述接入消息的消息體長(zhǎng)度;
將所述消息體長(zhǎng)度與所述接入消息的協(xié)議預(yù)先定義的消息長(zhǎng)度比較,是否相等;
如果相等,則驗(yàn)證通過(guò),執(zhí)行步驟S103 ;
如果不相等,則驗(yàn)證不通過(guò),返回接入消息錯(cuò)誤。
其中,步驟S103. I提取相應(yīng)字段名稱的字段值后,還可以驗(yàn)證該字段值是否符合該字段屬性要求,如果不符合返回轉(zhuǎn)換異常消息。
其中,步驟S104、將所述平臺(tái)消息發(fā)送至平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),在本發(fā)明具體實(shí)施時(shí),可以有多種實(shí)施方式,例如
可以先發(fā)送到ESB服務(wù)總線進(jìn)行緩存,由ESB服務(wù)總線將所述平臺(tái)消息發(fā)送至對(duì)應(yīng)的第二外圍系統(tǒng);
還可以根據(jù)平臺(tái)消息中的服務(wù)編碼,從配置信息中取出該服務(wù)編碼對(duì)應(yīng)的第二外圍系統(tǒng)IP地址端口信息,直接將平臺(tái)消息發(fā)送到第二外圍系統(tǒng);12
或者,還可以根據(jù)平臺(tái)消息中的系統(tǒng)編碼,從配置信息中取出系統(tǒng)編碼對(duì)應(yīng)的第二外圍系統(tǒng)IP地址端口信息,直接將平臺(tái)消息發(fā)送到第二外圍系統(tǒng)。
在以上實(shí)施例中所述平臺(tái)消息的格式具體可以為XML結(jié)構(gòu),例如,結(jié)構(gòu)如圖2所示的消息,根據(jù)XML結(jié)構(gòu)的特點(diǎn),該平臺(tái)消息還可以轉(zhuǎn)換為java對(duì)象,使用List數(shù)組表示,其中XML節(jié)點(diǎn)的名稱,如SvcCode,為平臺(tái)消息協(xié)議的一個(gè)字段名稱,該字段的值為平臺(tái)的服務(wù)編碼。
參見圖3,為本發(fā)明還提供的一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的裝置的組成圖,如圖所示,該裝置包括
第一接收單元301 :用于接收第一外圍系統(tǒng)的接入消息;
第一轉(zhuǎn)換單元302 :用于根據(jù)所述接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則,利用所述第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息。
第一發(fā)送單元303 :用于將所述平臺(tái)消息發(fā)送至平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
參見圖4,為本發(fā)明又提供的一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的方法的流程圖,如圖所示,該方法包括
S401、接收平臺(tái)消息;
S402、根據(jù)所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則;
S403、利用所述第二轉(zhuǎn)換規(guī)則,將所述平臺(tái)消息轉(zhuǎn)換為接出消息;
S404、將所述接出消息發(fā)送至所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
可見,在該方法中,在接收平臺(tái)消息后,根據(jù)平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則,再利用轉(zhuǎn)換規(guī)則,將平臺(tái)消息轉(zhuǎn)換為接出消息,因此可以在本發(fā)明實(shí)施時(shí)將一種消息協(xié)議對(duì)應(yīng)一種轉(zhuǎn)換規(guī)則,將各種轉(zhuǎn)換規(guī)則集成,使第二外圍系統(tǒng)在接收消息時(shí),不必關(guān)心消息的不同協(xié)議之間的轉(zhuǎn)換,可以直接收到本身協(xié)議的接出消息,減輕了外圍系統(tǒng)的接口處理負(fù)擔(dān)。
其中,步驟S401中所述接收平臺(tái)消息,在本發(fā)明具體實(shí)施時(shí),可以從任意發(fā)送平臺(tái)消息的執(zhí)行主體接收,例如可以從ESB服務(wù)總線接收、還可以從上述一種多協(xié)議消息統(tǒng)一接入的裝置接收,等等。
其中,步驟S402中所述根據(jù)平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則,具體地,可以包括以下兩個(gè)實(shí)施例
一個(gè)實(shí)施例中,步驟S401接收平臺(tái)消息具體為接收來(lái)自于固定端口號(hào)的平臺(tái)消息,其中,一個(gè)固定端口號(hào)對(duì)應(yīng)一個(gè)或多個(gè)已知的第二外圍系統(tǒng)的IP地址端口、對(duì)應(yīng)一個(gè)第二轉(zhuǎn)換規(guī)則,該第二轉(zhuǎn)換規(guī)則具體根據(jù)所述一個(gè)或多個(gè)已知的第二外圍系統(tǒng)的協(xié)議制定,在這里,所述已知的第二外圍系統(tǒng),具體可以是已知IP地址、端口、和協(xié)議的第二外圍系統(tǒng);
相應(yīng)地,在該實(shí)施例中,步驟S402具體包括以下步驟
根據(jù)接收的平臺(tái)消息,獲得發(fā)出該平臺(tái)消息的端口號(hào);
查詢?cè)摱丝谔?hào)對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則。
另一個(gè)實(shí)施例中,平臺(tái)消息所具有的關(guān)鍵特征對(duì)應(yīng)一種協(xié)議類型,例如,關(guān)鍵特征為平臺(tái)消息的消息體長(zhǎng)度,即一定長(zhǎng)度消息體的平臺(tái)消息對(duì)應(yīng)一個(gè)或多個(gè)已知的第二外圍1系統(tǒng)的IP地址端口、對(duì)應(yīng)一個(gè)第二轉(zhuǎn)換規(guī)則,或者關(guān)鍵特征為平臺(tái)消息的關(guān)鍵字,即一種平臺(tái)消息的關(guān)鍵字對(duì)應(yīng)一個(gè)或多個(gè)第二外圍系統(tǒng)IP地址端口、對(duì)應(yīng)一個(gè)第二轉(zhuǎn)換規(guī)則,所述的關(guān)鍵字,例如,可以取SvcCode,即服務(wù)編碼字段的字段值。
相應(yīng)地,在該實(shí)施例中,步驟S402具體包括以下步驟
提取所述平臺(tái)消息的關(guān)鍵特征;
查詢所述關(guān)鍵特征對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則。
具體采用以上哪一種實(shí)施方式可以在配置信息文件中配置,如果采用接入消息的字段所具有的關(guān)鍵特征對(duì)應(yīng)一種協(xié)議類型,具體提取的關(guān)鍵特征也可以在配置信息文件中配置。
下面,對(duì)第二轉(zhuǎn)換規(guī)則進(jìn)行解釋,在該方法的一個(gè)具體實(shí)施例中,所述第二轉(zhuǎn)換規(guī)則具體可以為
平臺(tái)消息的協(xié)議所包括的字段名稱按照預(yù)定順序排列的第三列表;
第二外圍系統(tǒng)的協(xié)議所包括的字段名稱按照預(yù)定順序排列的第四列表;
平臺(tái)消息的協(xié)議所包括的字段名稱與第二外圍系統(tǒng)的協(xié)議所包括的字段名稱之間的對(duì)應(yīng)關(guān)系具體根據(jù)第三列表與第四列表所列的字段名稱順序?qū)?yīng)。
在該第二轉(zhuǎn)換規(guī)則的具體實(shí)施例中,所述步驟S403、利用所述第二轉(zhuǎn)換規(guī)則,將平臺(tái)消息轉(zhuǎn)換為接出消息,具體包括以下步驟
S403. I、按照第三列表所列出的字段名稱的順序,從平臺(tái)消息中,提取相應(yīng)字段名稱的字段值;
S403. 2、從第四列表中,順序提取字段名稱;
S403. 3、將所述字段值,按照對(duì)應(yīng)順序,保存在從第四列表順序提取出的字段名稱所代表的字段中,組成接出消息。
其中,步驟S403. I提取相應(yīng)字段名稱的字段值后,還可以驗(yàn)證該字段值是否符合該字段屬性要求,如果不符合返回轉(zhuǎn)換異常消息。
為了保證信息的安全,在步驟S403之后,步驟S404之前,還可以包括將所述接出消息加密。
其中,步驟S404、將所述接出消息發(fā)送至所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),根據(jù)以上步驟S402的兩個(gè)實(shí)施例,相應(yīng)地,也可以有兩種實(shí)現(xiàn)方式
—種方式具體為
S404. la、查詢發(fā)出該平臺(tái)消息的端口號(hào)對(duì)應(yīng)的第二外圍系統(tǒng)IP地址、端口 ;
S404. 2a、根據(jù)第二外圍系統(tǒng)IP地址、端口,將所述接出消息發(fā)送至所述第二外圍系統(tǒng)。
另一種實(shí)施方式具體為
S404. lb、查詢?cè)撈脚_(tái)消息的關(guān)鍵特征對(duì)應(yīng)的第二外圍系統(tǒng)IP地址、端口 ;
S404. 2b、根據(jù)第二外圍系統(tǒng)IP地址、端口,將所述接出消息發(fā)送至所述第二外圍系統(tǒng)。
其中,將所述接出消息發(fā)送至所述第二外圍系統(tǒng)之前,該方法還包括根據(jù)第二外圍系統(tǒng)IP地址、端口,建立與第二外圍系統(tǒng)的連接。
為了不造成連接資源的浪費(fèi),在建立與第二外圍系統(tǒng)的連接之后,還以預(yù)設(shè)的超時(shí)時(shí)間為周期向第二外圍系統(tǒng)發(fā)送心跳消息,若未收到返回的響應(yīng)消息,則斷開與所述第二外圍系統(tǒng)的連接;
或者,
在建立與第二外圍系統(tǒng)的連接之后,還記錄該連接的每次數(shù)據(jù)傳輸時(shí)間,計(jì)算上一次數(shù)據(jù)數(shù)據(jù)傳輸時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔,若時(shí)間間隔超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,則斷開與第二外圍系統(tǒng)的連接。
在以上實(shí)施例中,可以預(yù)先創(chuàng)建多個(gè)連接對(duì)象,在建立與第二外圍系統(tǒng)的連接時(shí), 從預(yù)先創(chuàng)建的多個(gè)連接對(duì)象中選取空閑的連接對(duì)象實(shí)現(xiàn)與第二外圍系統(tǒng)的連接,并且將該連接對(duì)象狀態(tài)設(shè)置為繁忙,在斷開與第二外圍系統(tǒng)的連接時(shí),將該斷開連接的連接對(duì)象狀態(tài)設(shè)置為空閑。
該實(shí)施例中所述平臺(tái)消息的格式具體可以為如上述實(shí)施例中的XML結(jié)構(gòu),在此不再贅述。
參見圖5,為本發(fā)明再提供的一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的裝置組成圖,如圖所示,該裝置包括
第二接收單元501 :用于接收平臺(tái)消息;
第二轉(zhuǎn)換單元502:用于根據(jù)所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則,利用所述第二轉(zhuǎn)換規(guī)則,將所述平臺(tái)消息轉(zhuǎn)換為接出消息;
第二接出單元503 :用于將所述接出消息發(fā)送至所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
參見圖6,為本發(fā)明進(jìn)一步提供的一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的方法流程圖,包括
S601、接收第一外圍系統(tǒng)的接入消息;
S602、根據(jù)所述接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則;
S603、利用所述第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息;
S604、根據(jù)所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則;
S605、利用所述第二轉(zhuǎn)換規(guī)則,將所述平臺(tái)消息轉(zhuǎn)換為接出消息;
S606、將所述接出消息發(fā)送至所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
可見,在該方法中,在接收第一外圍系統(tǒng)的接入消息后,根據(jù)接入消息所采用的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則,再利用轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息,又根據(jù)平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則,利用轉(zhuǎn)換規(guī)則將平臺(tái)消息轉(zhuǎn)換為接出消息,因此可以將一種消息協(xié)議對(duì)應(yīng)一種轉(zhuǎn)換規(guī)則,將各種轉(zhuǎn)換規(guī)則集成,外圍系統(tǒng)不必關(guān)心消息的協(xié)議之間的轉(zhuǎn)換,可以直接發(fā)送或者接出本身協(xié)議的消息,減輕了外圍系統(tǒng)的接口處理負(fù)擔(dān)。
其中,步驟S601、接收第一外圍系統(tǒng)的接入消息具體可以通過(guò)監(jiān)聽各個(gè)接入端口的輸入接收,其中,所監(jiān)聽的各個(gè)接入端口,具體可以根據(jù)配置信息文件中預(yù)設(shè)的監(jiān)聽端口進(jìn)行監(jiān)聽。
如果所述接入消息為加密的消息,在讀取到所述接入消息后,該方法還可以包括解密所述接入消息。
在接收第一外圍系統(tǒng)的接入消息之前,還可以包括驗(yàn)證第一外圍系統(tǒng)的IP地址,若驗(yàn)證通過(guò),建立與所述第一外圍系統(tǒng)的連接。
在這里,驗(yàn)證第一外圍系統(tǒng)的IP地址不僅可以包括驗(yàn)證第一外圍系統(tǒng)的IP地址是否有效,還可以包括驗(yàn)證第一外圍系統(tǒng)的IP地址是否有權(quán)限接入。
為了不造成連接資源的浪費(fèi),該實(shí)施例在建立與第一外圍系統(tǒng)的連接之后,還以預(yù)設(shè)的超時(shí)時(shí)間為周期向第一外圍系統(tǒng)發(fā)送心跳消息,若未收到返回的響應(yīng)消息,則斷開與所述第一外圍系統(tǒng)的連接;
或者,
在建立與第一外圍系統(tǒng)的連接之后,還記錄該連接的每次數(shù)據(jù)傳輸時(shí)間,計(jì)算上一次數(shù)據(jù)傳輸時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔,若時(shí)間間隔超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,則斷開與第一外圍系統(tǒng)的連接。
其中,步驟S602、根據(jù)所述接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則,具體地,所述接入消息的協(xié)議的確定,可以有兩種實(shí)施方式
一種方式一個(gè)接入端口對(duì)應(yīng)一種協(xié)議的外圍系統(tǒng)的接入,具體地,在該實(shí)施例中,步驟S601所述接收第一外圍系統(tǒng)的接入消息具體為在預(yù)設(shè)固定接入端口接收第一外圍系統(tǒng)的接入消息。
相應(yīng)地,在該實(shí)施例中,步驟S602具體可以包括以下步驟
根據(jù)接收的接入消息,獲得接入端口號(hào);
查詢接入端口號(hào)對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則。
另一種方式接入消息所具有的關(guān)鍵特征對(duì)應(yīng)一種協(xié)議類型,關(guān)鍵特征可以為接入消息的消息體長(zhǎng)度,即一定長(zhǎng)度消息體的接入消息對(duì)應(yīng)一個(gè)第一轉(zhuǎn)換規(guī)則,或者關(guān)鍵特征也可以為接入消息的關(guān)鍵字,即接入消息的關(guān)鍵字對(duì)應(yīng)一個(gè)第一轉(zhuǎn)換規(guī)則,例如,關(guān)鍵字為接入消息的系統(tǒng)編碼字段值,系統(tǒng)編碼字段值對(duì)應(yīng)一個(gè)第一轉(zhuǎn)換規(guī)則,具體地,在該實(shí)施例中,步驟S602具體可以包括以下步驟
提取所述接入消息的關(guān)鍵特征;
查詢所述關(guān)鍵特征對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則。
具體采用以上哪一種實(shí)施方式可以在配置信息文件中配置,如果采用接入消息字段所具有的關(guān)鍵特征確定協(xié)議類型,具體采用的關(guān)鍵特征也可以在配置信息文件中配置。
下面,對(duì)第一轉(zhuǎn)換規(guī)則進(jìn)行解釋,在該方法的一個(gè)具體實(shí)施例中,所述第一轉(zhuǎn)換規(guī)則具體包括
接入消息的協(xié)議所包括的字段名稱按照預(yù)定順序排列的第一列表;
平臺(tái)消息的協(xié)議所包括的字段名稱按照預(yù)定順序排列的第二列表;
所述接入消息的協(xié)議所包括的字段名稱與平臺(tái)消息所包括的字段名稱之間的對(duì)應(yīng)關(guān)系具體根據(jù)第一列表與第二列表所列的字段名稱順序?qū)?yīng)。
在該第一轉(zhuǎn)換規(guī)則的具體實(shí)施例中,所述步驟S603、利用所述第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息,具體包括以下步驟
S603. I、按照第一列表所列出的字段名稱的順序,從接入消息中,提取相應(yīng)字段名稱的字段值;
S603. 2、從第二列表中,順序提取字段名稱;
S603. 3、將所述字段值,按照對(duì)應(yīng)順序,保存在從第二列表順序提取出的字段名稱所代表的字段中,組成平臺(tái)消息。
其中,步驟S603之前,還可以包括驗(yàn)證所述接入消息格式是否符合所述待發(fā)消息的協(xié)議,如果符合,則驗(yàn)證通過(guò),執(zhí)行步驟S603,否則,驗(yàn)證失敗,返回接入消息錯(cuò)誤,具體地,例如,所述驗(yàn)證接入消息格式是否符合待發(fā)消息的協(xié)議,具體可以通過(guò)以下步驟驗(yàn)證
計(jì)算所述計(jì)入消息的消息體長(zhǎng)度;
將所述消息體長(zhǎng)度與所述接入消息的協(xié)議預(yù)先定義的消息長(zhǎng)度比較,是否相等;
如果相等,貝U驗(yàn)證通過(guò),執(zhí)行步驟S603 ;
如果不相等,則驗(yàn)證不通過(guò),返回接入消息錯(cuò)誤。
在該方法的另一個(gè)實(shí)施例中,還可以將步驟S601到S603和步驟S604到S606兩部分分別部署,之間利用ESB服務(wù)總線實(shí)現(xiàn)平臺(tái)消息的緩存,具體地,其中,步驟S603、利用所述第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息之后,步驟S604之前,還包括
將所述平臺(tái)消息發(fā)送平至ESB服務(wù)總線;
在監(jiān)聽到ESB服務(wù)總線的消息隊(duì)列有所述平臺(tái)消息時(shí),從消息隊(duì)列獲得所述平臺(tái)消息。
在本發(fā)明具體實(shí)施時(shí),將所述平臺(tái)消息發(fā)送至ESB服務(wù)總線,可以包括兩種方式
一種方式是將特定平臺(tái)消息發(fā)送到對(duì)應(yīng)特定消息隊(duì)列中,例如,具體可以為判斷所述平臺(tái)消息包含的關(guān)鍵字,將所述平臺(tái)消息發(fā)送至關(guān)鍵字對(duì)應(yīng)的ESB服務(wù)總線消息隊(duì)列,例如,取服務(wù)編碼字段值作為關(guān)鍵字,則該步驟具體為判斷所述平臺(tái)消息的服務(wù)編碼, 將所述平臺(tái)消息發(fā)送至服務(wù)編碼對(duì)應(yīng)的接收隊(duì)列;
另一種方式是將平臺(tái)消息平均發(fā)送到各個(gè)消息隊(duì)列中,例如,具體可以為根據(jù)上一平臺(tái)消息發(fā)送到的消息隊(duì)列,將所述平臺(tái)消息發(fā)送至下一消息隊(duì)列。
具體采用以上哪一種實(shí)施方式可以在配置信息文件中配置。
將所述平臺(tái)消息發(fā)送至ESB服務(wù)總線之前,還可以包括建立與ESB服務(wù)總線端口的連接,具體可以根據(jù)所述平臺(tái)消息確定對(duì)應(yīng)的ESB服務(wù)總線端口 ;在監(jiān)聽到ESB服務(wù)總線的消息隊(duì)列有所述平臺(tái)消息時(shí),建立與所述平臺(tái)消息所在隊(duì)列對(duì)應(yīng)端口的連接,從消息隊(duì)列獲得所述平臺(tái)消息。
根據(jù)ESB服務(wù)總線本身提供的功能,可以將一個(gè)消息隊(duì)列對(duì)應(yīng)到一個(gè)或多個(gè)第二外圍系統(tǒng),因此,所述步驟S604、根據(jù)所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則具體可以為根據(jù)所述平臺(tái)消息在ESB服務(wù)總線的所在消息隊(duì)列對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述的第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則。
其中,步驟S604、根據(jù)所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則,具體地,還可以有以下實(shí)施例
在該實(shí)施例中,平臺(tái)消息所具有的關(guān)鍵特征對(duì)應(yīng)一種協(xié)議類型,例如,關(guān)鍵特征為平臺(tái)消息的消息體長(zhǎng)度,即一定長(zhǎng)度消息體的平臺(tái)消息對(duì)應(yīng)一個(gè)或多個(gè)已知的第二外圍系統(tǒng)的IP地址端口、對(duì)應(yīng)一個(gè)第二轉(zhuǎn)換規(guī)則,或者關(guān)鍵特征為平臺(tái)消息的關(guān)鍵字,即一種平臺(tái)消息的關(guān)鍵字對(duì)應(yīng)一個(gè)或多個(gè)第二外圍系統(tǒng)IP地址端口、對(duì)應(yīng)一個(gè)第二轉(zhuǎn)換規(guī)則,所述關(guān)鍵字,例如,可取SvcCode,即服務(wù)編碼字段的字段值,具體地,步驟S604具體為
提取所述平臺(tái)消息的關(guān)鍵特征;
查詢所述關(guān)鍵特征對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則。
步驟S604具體采用以上哪一種實(shí)施方式可以在配置信息文件中配置,如果采用接入消息的字段所具有的關(guān)鍵特征對(duì)應(yīng)一種協(xié)議類型,具體提取的關(guān)鍵特征也可以在配置信息文件中配置。
下面,對(duì)第二轉(zhuǎn)換規(guī)則進(jìn)行解釋,在該方法的一個(gè)具體實(shí)施例中,所述第二轉(zhuǎn)換規(guī)則具體可以為
平臺(tái)消息的協(xié)議所包括的字段名稱按照預(yù)定順序排列的第三列表;
第二外圍系統(tǒng)的協(xié)議所包括的字段名稱按照預(yù)定順序排列的第四列表;
平臺(tái)消息的協(xié)議所包括的字段名稱與第二外圍系統(tǒng)的協(xié)議所包括的字段名稱之間的對(duì)應(yīng)關(guān)系具體根據(jù)第三列表與第四列表所列的字段名稱順序?qū)?yīng)。
在該第二轉(zhuǎn)換規(guī)則的具體實(shí)施例中,所述步驟S605、利用所述第二轉(zhuǎn)換規(guī)則,將所述平臺(tái)消息轉(zhuǎn)換為接出消息,具體包括以下步驟
S605. I、按照第三列表所列出的字段名稱的順序,從平臺(tái)消息中,提取相應(yīng)字段名稱的字段值;
S605. 2、從第四列表中,順序提取字段名稱;
S605. . 3、將所述字段值,按照對(duì)應(yīng)順序,保存在從第四列表順序提取出的字段名稱所代表的字段中,組成接出消息。
為了保證信息的安全,在步驟S605之后,步驟S606之前,還可以包括將所述述接出消息加密。
其中,步驟S606、將所述接出消息發(fā)送至所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),具體包括以下步驟
S606. I、建立與第二外圍系統(tǒng)的連接;
S606. 2、將所述接出消息發(fā)送至所述第二外圍系統(tǒng)。
為了不造成連接資源的浪費(fèi),在建立與第二外圍系統(tǒng)的連接之后,還以預(yù)設(shè)的超時(shí)時(shí)間為周期向第二外圍系統(tǒng)發(fā)送心跳消息,若未收到返回的響應(yīng)消息,則斷開與所述第二外圍系統(tǒng)的連接;
或者,
在建立與第二外圍系統(tǒng)的連接之后,還記錄該連接的每次數(shù)據(jù)傳輸時(shí)間,計(jì)算上一次數(shù)據(jù)傳輸時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔,若時(shí)間間隔超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,則斷開與第二外圍系統(tǒng)的連接。
在以上各實(shí)施例中,可以預(yù)先創(chuàng)建多個(gè)與第一外圍系統(tǒng)連接的連接對(duì)象,或者創(chuàng)建多個(gè)與第二外圍系統(tǒng)連接的連接對(duì)象,在建立與第一外圍系統(tǒng)或者第二外圍系統(tǒng)的連接時(shí),從預(yù)先創(chuàng)建的多個(gè)連接對(duì)象中選取空閑的連接對(duì)象實(shí)現(xiàn)連接,并且將該連接對(duì)象狀態(tài)設(shè)置為繁忙,在斷開連接時(shí),將該斷開連接的連接對(duì)象狀態(tài)設(shè)置為空閑。
在步驟S606之后,本發(fā)明還包括接收第二外圍系統(tǒng)的返回消息,將所述第二外圍系統(tǒng)的返回消息發(fā)送至第一外圍系統(tǒng)。具體地,可以將第二外圍系統(tǒng)的返回消息添加到返回結(jié)果記錄中,將返回結(jié)果記錄中的返回消息按照本發(fā)明步驟S601到步驟S606的方法將返回消息發(fā)送至第一外圍系統(tǒng),在此不再贅述。
需要說(shuō)明的是,以上各實(shí)施例中所述平臺(tái)消息的格式具體可以如上述實(shí)施例中的 XML結(jié)構(gòu),在此不再贅述。
以上各實(shí)施例所述配置信息文件具體可以采用XML結(jié)構(gòu)的文檔,XML配置信息文件中的每個(gè)節(jié)點(diǎn)代表不同處理需求對(duì)應(yīng)的配置信息,系統(tǒng)管理員可以通過(guò)配置管理界面向配置信息文件發(fā)出修改指令,還可以包括以下對(duì)配置信息文件通過(guò)配置管理界面對(duì)相關(guān)配置信息進(jìn)行修改。
另外,在本發(fā)明具體實(shí)施時(shí),還可以根據(jù)需求監(jiān)控接入消息、平臺(tái)消息、接出消息在接收、轉(zhuǎn)換和發(fā)送時(shí)的異常狀態(tài),也可以監(jiān)控ESB服務(wù)總線的運(yùn)行狀態(tài)和消息隊(duì)列狀態(tài), 在出現(xiàn)異常時(shí),返回異常消息。
參見圖7,為本發(fā)明進(jìn)一步提供的一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的系統(tǒng)組成圖,包括
接入模塊701 :用于接收第一外圍系統(tǒng)的接入消息,根據(jù)所述接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則,利用所述第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息;
接出模塊702 :用于根據(jù)所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則,利用所述第二轉(zhuǎn)換規(guī)則,將所述平臺(tái)消息轉(zhuǎn)換為接出消息,將所述接出消息發(fā)送至所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
其中,所述接入模塊701,具體可以包括
第一接收單元701A :用于接收第一外圍系統(tǒng)的接入消息;
第一轉(zhuǎn)換單元701B :用于根據(jù)所述接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則,利用所述第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息。
其中,所述接出模塊702,具體可以包括
第二轉(zhuǎn)換單元702A :用于根據(jù)所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則,利用所述第二轉(zhuǎn)換規(guī)則,將所述平臺(tái)消息轉(zhuǎn)換為接出消息;
第二發(fā)送單元702B:用于將所述接出消息發(fā)送至所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
在該實(shí)施例中,所述接入模塊701 :還可以用于監(jiān)聽各個(gè)接入端口的輸入,在監(jiān)聽到接入端口的輸入時(shí),接收接入消息。
所述接入模塊701 :還可以用于在接收第一外圍系統(tǒng)的接入消息之前建立與所述第一外圍系統(tǒng)的連接,在建立與第一外圍系統(tǒng)的連接之后,還以預(yù)設(shè)的超時(shí)時(shí)間為周期向第一外圍系統(tǒng)發(fā)送心跳消息,若未收到返回的響應(yīng)消息,則斷開與所述第一外圍系統(tǒng)的連接;或者,在建立與第一外圍系統(tǒng)的連接之后,還記錄該連接的每次數(shù)據(jù)傳輸時(shí)間,計(jì)算上一次數(shù)據(jù)傳輸時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔,若時(shí)間間隔超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,則斷開與第一外圍系統(tǒng)的連接。
所述接出模塊702 :還用于在將接出消息發(fā)送至所述第二外圍系統(tǒng)之前建立與第二外圍系統(tǒng)的連接,在建立與第二外圍系統(tǒng)的連接之后,還以預(yù)設(shè)的超時(shí)時(shí)間為周期向第二外圍系統(tǒng)發(fā)送心跳消息,若未收到返回的響應(yīng)消息,則斷開與所述第二外圍系統(tǒng)的連接;或者,在建立與第二外圍系統(tǒng)的連接之后,還記錄該連接的每次數(shù)據(jù)傳輸時(shí)間,計(jì)算上一次數(shù)據(jù)傳輸時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔,若時(shí)間間隔超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,則斷開與第二外圍系統(tǒng)的連接。
在該系統(tǒng)的另一個(gè)實(shí)施例中,參見圖8,如圖所示,該系統(tǒng)還可以包括ESB服務(wù)總線模塊803 :用于緩存所述平臺(tái)消息;
所述接入模塊801 :還用于將所述平臺(tái)消息發(fā)送至ESB服務(wù)總線模塊804 ;
所述接出模塊802 :還用于在監(jiān)聽到ESB服務(wù)總線的消息隊(duì)列有所述平臺(tái)消息時(shí), 從ESB服務(wù)總線模塊803的消息隊(duì)列獲得所述平臺(tái)消息。
另外,在本發(fā)明具體實(shí)施時(shí),還可以根據(jù)需求設(shè)置監(jiān)控模塊804:具體用于實(shí)現(xiàn)監(jiān)控接入模塊、接出模塊、ESB服務(wù)總線模塊的運(yùn)行狀態(tài)和消息隊(duì)列狀態(tài),例如,監(jiān)控接入模塊和接出模塊是否有消息接入異常、接出異常、轉(zhuǎn)換異常、ESB服務(wù)總線模塊的運(yùn)行狀態(tài)和消息隊(duì)列狀態(tài)是否異常,在出現(xiàn)異常時(shí),返回異常消息。
需要說(shuō)明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語(yǔ)僅僅用來(lái)將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來(lái),而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、物品或者設(shè)備所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過(guò)程、方法、物品或者設(shè)備中還存在另外的相同要素。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均包含在本發(fā)明的保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的方法,其特征在于,包括接收第一外圍系統(tǒng)的接入消息;根據(jù)所述接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則;利用所述第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息;將所述平臺(tái)消息發(fā)送至平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述接收第一外圍系統(tǒng)的接入消息具體通過(guò)監(jiān)聽各個(gè)接入端口的輸入接收。
3.根據(jù)權(quán)利要求I所述的方法,其特征在于,在接收第一外圍系統(tǒng)的接入消息之前還驗(yàn)證第一外圍系統(tǒng)的IP地址,若驗(yàn)證通過(guò),建立與所述第一外圍系統(tǒng)的連接;在建立與第一外圍系統(tǒng)的連接之后,還以預(yù)設(shè)的超時(shí)時(shí)間為周期向第一外圍系統(tǒng)發(fā)送心跳消息,若未收到返回的響應(yīng)消息,則斷開與所述第一外圍系統(tǒng)的連接;或者,在建立與第一外圍系統(tǒng)的連接之后,還記錄該連接的每次數(shù)據(jù)傳輸時(shí)間,計(jì)算上一次數(shù)據(jù)傳輸時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔,若時(shí)間間隔超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,則斷開與第一外圍系統(tǒng)的連接。
4.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述接收第一外圍系統(tǒng)的接入消息具體為在預(yù)設(shè)固定接入端口接收第一外圍系統(tǒng)的接入消息;所述根據(jù)接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則具體為根據(jù)接收接入消息的接入端口,獲得接入端口號(hào);查詢接入端口號(hào)對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則。
5.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述根據(jù)接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則具體為提取所述接入消息的關(guān)鍵特征;查詢所述關(guān)鍵特征對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則。
6.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述第一轉(zhuǎn)換規(guī)則具體為接入消息的協(xié)議所包括的字段名稱按照預(yù)定順序排列的第一列表;平臺(tái)消息的協(xié)議所包括的字段名稱按照預(yù)定順序排列的第二列表;所述接入消息的協(xié)議所包括的字段名稱與平臺(tái)消息所包括的字段名稱之間的對(duì)應(yīng)關(guān)系具體根據(jù)第一列表與第二列表所列的字段名稱順序?qū)?yīng)。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述利用第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息具體為按照第一列表所列出的字段名稱的順序,從接入消息中,提取相應(yīng)字段名稱的字段值;從第二列表中,順序提取字段名稱;將所述字段值,按照對(duì)應(yīng)順序,保存在從第二列表順序提取出的字段名稱所代表的字段中,組成平臺(tái)消息。
8.一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的裝置,其特征在于,包括第一接收單元用于接收第一外圍系統(tǒng)的接入消息;第一轉(zhuǎn)換單元用于根據(jù)所述接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則,利用所述第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息。第一發(fā)送單元用于將所述平臺(tái)消息發(fā)送至平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
9.一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的方法,其特征在于,包括接收平臺(tái)消息;根據(jù)所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則;利用所述第二轉(zhuǎn)換規(guī)則,將所述平臺(tái)消息轉(zhuǎn)換為接出消息;將所述接出消息發(fā)送至所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于,所述接收平臺(tái)消息具體為接收來(lái)自于固定端口號(hào)的平臺(tái)消息,其中,一個(gè)固定端口號(hào)對(duì)應(yīng)一個(gè)或多個(gè)已知的第二外圍系統(tǒng)的IP地址端口、對(duì)應(yīng)一個(gè)第二轉(zhuǎn)換規(guī)則;所述根據(jù)平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則具體為根據(jù)接收的平臺(tái)消息,獲得發(fā)出該平臺(tái)消息的端口號(hào);查詢?cè)摱丝谔?hào)對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則。
11.根據(jù)權(quán)利要求9所述的方法,其特征在于,所述根據(jù)平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則具體為提取所述平臺(tái)消息的關(guān)鍵特征;查詢所述關(guān)鍵特征對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則。
12.根據(jù)權(quán)利要求9所述的方法,其特征在于,所述第二轉(zhuǎn)換規(guī)則具體為平臺(tái)消息的協(xié)議所包括的字段名稱按照預(yù)定順序排列的第三列表;第二外圍系統(tǒng)的協(xié)議所包括的字段名稱按照預(yù)定順序排列的第四列表;平臺(tái)消息的協(xié)議所包括的字段名稱與第二外圍系統(tǒng)的協(xié)議所包括的字段名稱之間的對(duì)應(yīng)關(guān)系具體根據(jù)第三列表與第四列表所列的字段名稱順序?qū)?yīng)。
13.根據(jù)權(quán)利要求12所述的方法,其特征在于,利用所述第二轉(zhuǎn)換規(guī)則,將平臺(tái)消息轉(zhuǎn)換為接出消息具體為按照第三列表所列出的字段名稱的順序,從平臺(tái)消息中,提取相應(yīng)字段名稱的字段值;從第四列表中,順序提取字段名稱;將所述字段值,按照對(duì)應(yīng)順序,保存在從第四列表順序提取出的字段名稱所代表的字段中,組成接出消息。
14.根據(jù)權(quán)利要求10所述的方法,其特征在于,所述將接出消息發(fā)送至平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)具體為查詢發(fā)出該平臺(tái)消息的端口號(hào)對(duì)應(yīng)的第二外圍系統(tǒng)IP地址、端口 ;根據(jù)第二外圍系統(tǒng)IP地址、端口,將所述接出消息發(fā)送至所述第二外圍系統(tǒng)。
15.根據(jù)權(quán)利要求11所述的方法,其特征在于,所述將接出消息發(fā)送至平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)具體為查詢?cè)撈脚_(tái)消息的關(guān)鍵特征對(duì)應(yīng)的第二外圍系統(tǒng)IP地址、端口 ;根據(jù)第二外圍系統(tǒng)IP地址、端口,將所述接出消息發(fā)送至所述第二外圍系統(tǒng)。
16.根據(jù)權(quán)利要求14、15所述的方法,其特征在于,將所述接出消息發(fā)送至所述第二外圍系統(tǒng)之前還根據(jù)第二外圍系統(tǒng)IP地址、端口,建立與第二外圍系統(tǒng)的連接;在建立與第二外圍系統(tǒng)的連接之后,還以預(yù)設(shè)的超時(shí)時(shí)間為周期向第二外圍系統(tǒng)發(fā)送心跳消息,若未收到返回的響應(yīng)消息,則斷開與所述第二外圍系統(tǒng)的連接;或者,在建立與第二外圍系統(tǒng)的連接之后,還記錄該連接的每次數(shù)據(jù)傳輸時(shí)間,計(jì)算上一次數(shù)據(jù)傳輸時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔,若時(shí)間間隔超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,則斷開與第二外圍系統(tǒng)的連接。
17.一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的裝置,其特征在于,包括第二接收單元用于接收平臺(tái)消息;第二轉(zhuǎn)換單元用于根據(jù)所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則,利用所述第二轉(zhuǎn)換規(guī)則,將所述平臺(tái)消息轉(zhuǎn)換為接出消第二接出單元:用于將所述接出消息發(fā)送至所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
18.一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的方法,其特征在于,包括接收第一外圍系統(tǒng)的接入消息;根據(jù)所述接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則;利用所述第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息;根據(jù)所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則;利用所述第二轉(zhuǎn)換規(guī)則,將所述平臺(tái)消息轉(zhuǎn)換為接出消息;將所述接出消息發(fā)送至所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
19.根據(jù)權(quán)利要求18所述的方法,其特征在于,所述接收第一外圍系統(tǒng)的接入消息具體通過(guò)監(jiān)聽各個(gè)接入端口的輸入接收。
20.根據(jù)權(quán)利要求18所述的方法,其特征在于,在接收第一外圍系統(tǒng)的接入消息之前還建立與所述第一外圍系統(tǒng)的連接;在建立與第一外圍系統(tǒng)的連接之后,還以預(yù)設(shè)的超時(shí)時(shí)間為周期向第一外圍系統(tǒng)發(fā)送心跳消息,若未收到返回的響應(yīng)消息,則斷開與所述第一外圍系統(tǒng)的連接;或者,在建立與第一外圍系統(tǒng)的連接之后,還記錄該連接的每次數(shù)據(jù)傳輸時(shí)間,計(jì)算上一次數(shù)據(jù)傳輸時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔,若時(shí)間間隔超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,則斷開與第一外圍系統(tǒng)的連接。所述將接出消息發(fā)送至所述第二外圍系統(tǒng)之前還建立與第二外圍系統(tǒng)的連接;在建立與第二外圍系統(tǒng)的連接之后,還以預(yù)設(shè)的超時(shí)時(shí)間為周期向第二外圍系統(tǒng)發(fā)送心跳消息,若未收到返回的響應(yīng)消息,則斷開與所述第二外圍系統(tǒng)的連接;或者,在建立與第二外圍系統(tǒng)的連接之后,還記錄該連接的每次數(shù)據(jù)傳輸時(shí)間,計(jì)算上一次數(shù)據(jù)傳輸時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔,若時(shí)間間隔超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,則斷開與第二外圍系統(tǒng)的連接。
21.根據(jù)權(quán)利要求18所述的方法,其特征在于,所述利用第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息之后,根據(jù)所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則之前,還包括將所述平臺(tái)消息發(fā)送至ESB服務(wù)總線;在監(jiān)聽到ESB服務(wù)總線的消息隊(duì)列有所述平臺(tái)消息時(shí),從消息隊(duì)列獲得所述平臺(tái)消肩、O
22.—種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的系統(tǒng),其特征在于,包括接入模塊用于接收第一外圍系統(tǒng)的接入消息,根據(jù)所述接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則,利用所述第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息;接出模塊用于根據(jù)所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則,利用所述第二轉(zhuǎn)換規(guī)則,將所述平臺(tái)消息轉(zhuǎn)換為接出消息,將所述接出消息發(fā)送至所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng)。
23.根據(jù)權(quán)利要求22所述的系統(tǒng),其特征在于,所述接入模塊還用于監(jiān)聽各個(gè)接入端口的輸入,在監(jiān)聽到接入端口的輸入時(shí),接收接入消息。
24.根據(jù)權(quán)利要求22所述的系統(tǒng),其特征在于,所述接入模塊還用于在接收第一外圍系統(tǒng)的接入消息之前建立與所述第一外圍系統(tǒng)的連接,在建立與第一外圍系統(tǒng)的連接之后,還以預(yù)設(shè)的超時(shí)時(shí)間為周期向第一外圍系統(tǒng)發(fā)送心跳消息,若未收到返回的響應(yīng)消息, 則斷開與所述第一外圍系統(tǒng)的連接;或者,在建立與第一外圍系統(tǒng)的連接之后,還記錄該連接的每次數(shù)據(jù)傳輸時(shí)間,計(jì)算上一次數(shù)據(jù)傳輸時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔,若時(shí)間間隔超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,則斷開與第一外圍系統(tǒng)的連接。所述接出模塊還用于在將接出消息發(fā)送至所述第二外圍系統(tǒng)之前建立與第二外圍系統(tǒng)的連接,在建立與第二外圍系統(tǒng)的連接之后,還以預(yù)設(shè)的超時(shí)時(shí)間為周期向第二外圍系統(tǒng)發(fā)送心跳消息,若未收到返回的響應(yīng)消息,則斷開與所述第二外圍系統(tǒng)的連接;或者,在建立與第二外圍系統(tǒng)的連接之后,還記錄該連接的每次數(shù)據(jù)傳輸時(shí)間,計(jì)算上一次數(shù)據(jù)傳輸時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔,若時(shí)間間隔超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,則斷開與第二外圍系統(tǒng)的連接。
25.根據(jù)權(quán)利要求22所述的系統(tǒng),其特征在于,還包括ESB服務(wù)總線模塊具體用于緩存所述平臺(tái)消息;接入模塊還用于將所述平臺(tái)消息發(fā)送至ESB服務(wù)總線模塊;接出模塊還用于在監(jiān)聽到ESB服務(wù)總線的消息隊(duì)列有所述平臺(tái)消息時(shí),從ESB服務(wù)總線模塊的消息隊(duì)列獲得所述平臺(tái)消息。
全文摘要
本發(fā)明公開了一種實(shí)現(xiàn)多協(xié)議消息統(tǒng)一接口的方法及相關(guān)裝置、系統(tǒng)以實(shí)現(xiàn)將各種協(xié)議的外圍系統(tǒng)的消息統(tǒng)一接入接出,且不需要外圍系統(tǒng)進(jìn)行接口處理的目的,包括接收第一外圍系統(tǒng)的接入消息,根據(jù)所述接入消息的協(xié)議,選擇與接入消息的協(xié)議對(duì)應(yīng)的第一轉(zhuǎn)換規(guī)則,利用所述第一轉(zhuǎn)換規(guī)則,將接入消息轉(zhuǎn)換為平臺(tái)消息,根據(jù)所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),選擇與所述第二外圍系統(tǒng)的協(xié)議對(duì)應(yīng)的第二轉(zhuǎn)換規(guī)則,利用所述第二轉(zhuǎn)換規(guī)則,將所述平臺(tái)消息轉(zhuǎn)換為接出消息,將所述接出消息發(fā)送至所述平臺(tái)消息對(duì)應(yīng)的第二外圍系統(tǒng),因此外圍系統(tǒng)不必關(guān)心消息的協(xié)議之間的轉(zhuǎn)換,可以直接發(fā)送或者接出本身協(xié)議的消息,減輕了外圍系統(tǒng)的接口處理負(fù)擔(dān),降低了外圍系統(tǒng)之間互訪的耦合度,提高了開發(fā)效率。
文檔編號(hào)H04L29/06GK102938770SQ20121047956
公開日2013年2月20日 申請(qǐng)日期2012年11月22日 優(yōu)先權(quán)日2012年11月22日
發(fā)明者王紅亮, 吳學(xué)良, 王攀寧, 韋文泱, 劉沖 申請(qǐng)人:亞信聯(lián)創(chuàng)科技(中國(guó))有限公司