本申請(qǐng)涉及計(jì)算機(jī),特別是涉及一種應(yīng)用于分布式集群系統(tǒng)的消息處理方法、系統(tǒng)以及設(shè)備。
背景技術(shù):
1、sip協(xié)議(session?initialization?protocol,會(huì)話(huà)初始協(xié)議)是由ietf制定的多媒體通信協(xié)議,基于文本的應(yīng)用層控制協(xié)議,用于創(chuàng)建、修改和釋放一個(gè)或多個(gè)參與者的會(huì)話(huà)。
2、在sip協(xié)議中,現(xiàn)有技術(shù)中通常使用sip協(xié)議棧來(lái)管理sip的會(huì)話(huà)狀態(tài),從而實(shí)現(xiàn)多媒體間的消息通信。sip會(huì)話(huà)狀態(tài)包括sip會(huì)話(huà)的發(fā)起、建立、修改、終止等一系列復(fù)雜操作狀態(tài),而復(fù)雜的流程會(huì)對(duì)服務(wù)端的性能造成影響,并且在使用sip會(huì)話(huà)狀態(tài)來(lái)管理消息后,服務(wù)端只能使用原接入服務(wù)接收響應(yīng),否則會(huì)因在內(nèi)存中找不到會(huì)話(huà)而導(dǎo)致交互失敗,給分布式部署帶來(lái)難題。
技術(shù)實(shí)現(xiàn)思路
1、基于此,有必要針對(duì)上述技術(shù)問(wèn)題,提供一種應(yīng)用于分布式集群系統(tǒng)的消息處理方法、系統(tǒng)以及設(shè)備。
2、第一方面,本申請(qǐng)?zhí)峁┝艘环N應(yīng)用于分布式集群系統(tǒng)的消息處理方法,所述系統(tǒng)包括上級(jí)域、下級(jí)域以及緩存中間件,所述上級(jí)域與至少一個(gè)上級(jí)平臺(tái)通信交互,所述下級(jí)域與至少一個(gè)下級(jí)設(shè)備通信交互,所述緩存中間件與所述上級(jí)域、所述下級(jí)域通信交互,所述方法包括:
3、通過(guò)所述上級(jí)域獲取所述上級(jí)平臺(tái)發(fā)送的sip請(qǐng)求報(bào)文,將所述sip請(qǐng)求報(bào)文發(fā)送至所述下級(jí)域;
4、通過(guò)所述下級(jí)域?qū)⑺鰏ip請(qǐng)求報(bào)文轉(zhuǎn)發(fā)至對(duì)應(yīng)的下級(jí)設(shè)備,所述下級(jí)設(shè)備基于所述sip請(qǐng)求報(bào)文,生成第一響應(yīng)報(bào)文;
5、通過(guò)所述緩存中間件存儲(chǔ)所述第一響應(yīng)報(bào)文的關(guān)鍵信息;
6、通過(guò)所述上級(jí)域在所述緩存中間件中查詢(xún)所述sip請(qǐng)求報(bào)文對(duì)應(yīng)的所述關(guān)鍵信息,并對(duì)所述關(guān)鍵信息進(jìn)行組裝,生成所述sip請(qǐng)求報(bào)文的第二響應(yīng)報(bào)文。
7、在其中一個(gè)實(shí)施例中,所述通過(guò)所述下級(jí)域?qū)⑺鰏ip請(qǐng)求報(bào)文轉(zhuǎn)發(fā)至對(duì)應(yīng)的下級(jí)設(shè)備包括:
8、通過(guò)所述下級(jí)域獲取所述sip請(qǐng)求報(bào)文的第一請(qǐng)求頭;對(duì)所述第一請(qǐng)求頭進(jìn)行解析,提取所述sip請(qǐng)求報(bào)文的第一目標(biāo)信息;獲取所述下級(jí)設(shè)備的第二目標(biāo)信息,將所述第一目標(biāo)信息替換為所述第二目標(biāo)信息,并將替換后的所述sip請(qǐng)求報(bào)文轉(zhuǎn)發(fā)至對(duì)應(yīng)的下級(jí)設(shè)備。
9、在其中一個(gè)實(shí)施例中,在所述下級(jí)設(shè)備基于所述sip請(qǐng)求報(bào)文,生成第一響應(yīng)報(bào)文之后,所述方法還包括:
10、通過(guò)所述下級(jí)域獲取所述第一響應(yīng)報(bào)文的第二請(qǐng)求頭;對(duì)所述第二請(qǐng)求頭進(jìn)行解析,提取所述第一響應(yīng)報(bào)文的第二目標(biāo)信息;獲取所述上級(jí)平臺(tái)的第一目標(biāo)信息,將所述第二請(qǐng)求頭的第二目標(biāo)信息替換為所述第一目標(biāo)信息,并將替換后的第二請(qǐng)求頭發(fā)送至所述緩存中間件;所述關(guān)鍵信息包括所述替換后的第二請(qǐng)求頭。
11、在其中一個(gè)實(shí)施例中,所述方法還包括:
12、通過(guò)所述上級(jí)域在所述緩存中間件中查詢(xún)所述sip請(qǐng)求報(bào)文對(duì)應(yīng)的所述替換后的第二請(qǐng)求頭,并提取所述替換后的第二請(qǐng)求頭進(jìn)行組裝,生成所述sip請(qǐng)求報(bào)文的第二響應(yīng)報(bào)文。
13、在其中一個(gè)實(shí)施例中,所述方法還包括:
14、通過(guò)所述上級(jí)域,利用sipprovider接口,將所述第二響應(yīng)報(bào)文發(fā)送至對(duì)應(yīng)的所述上級(jí)平臺(tái)。
15、在其中一個(gè)實(shí)施例中,所述方法還包括:
16、通過(guò)所述上級(jí)域獲取所述上級(jí)平臺(tái)發(fā)送的sip請(qǐng)求報(bào)文,利用sipprovider接口,將所述sip請(qǐng)求報(bào)文發(fā)送至所述下級(jí)域。
17、第二方面,本申請(qǐng)還提供了一種分布式集群系統(tǒng),所述系統(tǒng)包括上級(jí)域、下級(jí)域以及緩存中間件,所述上級(jí)域與至少一個(gè)上級(jí)平臺(tái)通信交互,所述下級(jí)域與至少一個(gè)下級(jí)設(shè)備通信交互,所述緩存中間件與所述上級(jí)域、所述下級(jí)域通信交互,
18、所述上級(jí)域用于獲取所述上級(jí)平臺(tái)發(fā)送的sip請(qǐng)求報(bào)文,將所述sip請(qǐng)求報(bào)文發(fā)送至所述下級(jí)域;
19、所述下級(jí)域用于將所述sip請(qǐng)求報(bào)文轉(zhuǎn)發(fā)至對(duì)應(yīng)的下級(jí)設(shè)備,所述下級(jí)設(shè)備基于所述sip請(qǐng)求報(bào)文,生成第一響應(yīng)報(bào)文;
20、所述緩存中間件用于存儲(chǔ)所述第一響應(yīng)報(bào)文的關(guān)鍵信息;
21、所述上級(jí)域用于在所述緩存中間件中查詢(xún)所述sip請(qǐng)求報(bào)文對(duì)應(yīng)的所述關(guān)鍵信息,并對(duì)所述關(guān)鍵信息進(jìn)行組裝,生成所述sip請(qǐng)求報(bào)文的第二響應(yīng)報(bào)文。
22、在其中一個(gè)實(shí)施例中,所述下級(jí)域還用于獲取所述sip請(qǐng)求報(bào)文的第一請(qǐng)求頭;對(duì)所述第一請(qǐng)求頭進(jìn)行解析,提取所述sip請(qǐng)求報(bào)文的第一目標(biāo)信息;獲取所述下級(jí)設(shè)備的第二目標(biāo)信息,將所述第一目標(biāo)信息替換為所述第二目標(biāo)信息,并將替換后的所述sip請(qǐng)求報(bào)文轉(zhuǎn)發(fā)至對(duì)應(yīng)的下級(jí)設(shè)備。
23、在其中一個(gè)實(shí)施例中,所述下級(jí)域還用于獲取所述第一響應(yīng)報(bào)文的第二請(qǐng)求頭;對(duì)所述第二請(qǐng)求頭進(jìn)行解析,提取所述第一響應(yīng)報(bào)文的第二目標(biāo)信息;獲取所述上級(jí)平臺(tái)的第一目標(biāo)信息,將所述第二請(qǐng)求頭的第二目標(biāo)信息替換為所述第一目標(biāo)信息,并將替換后的第二請(qǐng)求頭發(fā)送至所述緩存中間件;所述關(guān)鍵信息包括所述替換后的第二請(qǐng)求頭。
24、第三方面,本申請(qǐng)還提供了一種計(jì)算機(jī)設(shè)備,包括存儲(chǔ)器和處理器,所述存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)程序,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)上述第一方面所述方法對(duì)應(yīng)的步驟。
25、上述應(yīng)用于分布式集群系統(tǒng)的消息處理方法、系統(tǒng)以及設(shè)備,通過(guò)所述上級(jí)域獲取所述上級(jí)平臺(tái)發(fā)送的sip請(qǐng)求報(bào)文,將所述sip請(qǐng)求報(bào)文發(fā)送至所述下級(jí)域;通過(guò)所述下級(jí)域?qū)⑺鰏ip請(qǐng)求報(bào)文轉(zhuǎn)發(fā)至對(duì)應(yīng)的下級(jí)設(shè)備,所述下級(jí)設(shè)備基于所述sip請(qǐng)求報(bào)文,生成第一響應(yīng)報(bào)文;通過(guò)所述緩存中間件存儲(chǔ)所述第一響應(yīng)報(bào)文的關(guān)鍵信息;通過(guò)所述上級(jí)域在所述緩存中間件中查詢(xún)所述sip請(qǐng)求報(bào)文對(duì)應(yīng)的所述關(guān)鍵信息,并對(duì)所述關(guān)鍵信息進(jìn)行組裝,生成所述sip請(qǐng)求報(bào)文的第二響應(yīng)報(bào)文,調(diào)整了原本sip協(xié)議棧的發(fā)送機(jī)制,通過(guò)繞過(guò)對(duì)sip會(huì)話(huà)狀態(tài)的管理,實(shí)現(xiàn)了sip無(wú)會(huì)話(huà)狀態(tài)的消息發(fā)送方式,并解決跨平臺(tái)的sip服務(wù)消息交互的問(wèn)題。
1.一種應(yīng)用于分布式集群系統(tǒng)的消息處理方法,所述系統(tǒng)包括上級(jí)域、下級(jí)域以及緩存中間件,所述上級(jí)域與至少一個(gè)上級(jí)平臺(tái)通信交互,所述下級(jí)域與至少一個(gè)下級(jí)設(shè)備通信交互,所述緩存中間件與所述上級(jí)域、所述下級(jí)域通信交互,其特征在于,所述方法包括:
2.根據(jù)權(quán)利要求1所述的應(yīng)用于分布式集群系統(tǒng)的消息處理方法,其特征在于,所述通過(guò)所述下級(jí)域?qū)⑺鰏ip請(qǐng)求報(bào)文轉(zhuǎn)發(fā)至對(duì)應(yīng)的下級(jí)設(shè)備包括:
3.根據(jù)權(quán)利要求1所述的應(yīng)用于分布式集群系統(tǒng)的消息處理方法,其特征在于,在所述下級(jí)設(shè)備基于所述sip請(qǐng)求報(bào)文,生成第一響應(yīng)報(bào)文之后,所述方法還包括:
4.根據(jù)權(quán)利要求3所述的應(yīng)用于分布式集群系統(tǒng)的消息處理方法,其特征在于,所述方法還包括:
5.根據(jù)權(quán)利要求4所述的應(yīng)用于分布式集群系統(tǒng)的消息處理方法,其特征在于,所述方法還包括:
6.根據(jù)權(quán)利要求1所述的應(yīng)用于分布式集群系統(tǒng)的消息處理方法,其特征在于,所述方法還包括:
7.一種分布式集群系統(tǒng),其特征在于,所述系統(tǒng)包括上級(jí)域、下級(jí)域以及緩存中間件,所述上級(jí)域與至少一個(gè)上級(jí)平臺(tái)通信交互,所述下級(jí)域與至少一個(gè)下級(jí)設(shè)備通信交互,所述緩存中間件與所述上級(jí)域、所述下級(jí)域通信交互,
8.根據(jù)權(quán)利要求7所述的分布式集群系統(tǒng),其特征在于,所述下級(jí)域還用于獲取所述sip請(qǐng)求報(bào)文的第一請(qǐng)求頭;對(duì)所述第一請(qǐng)求頭進(jìn)行解析,提取所述sip請(qǐng)求報(bào)文的第一目標(biāo)信息;獲取所述下級(jí)設(shè)備的第二目標(biāo)信息,將所述第一目標(biāo)信息替換為所述第二目標(biāo)信息,并將替換后的所述sip請(qǐng)求報(bào)文轉(zhuǎn)發(fā)至對(duì)應(yīng)的下級(jí)設(shè)備。
9.根據(jù)權(quán)利要求7所述的分布式集群系統(tǒng),其特征在于,所述下級(jí)域還用于獲取所述第一響應(yīng)報(bào)文的第二請(qǐng)求頭;對(duì)所述第二請(qǐng)求頭進(jìn)行解析,提取所述第一響應(yīng)報(bào)文的第二目標(biāo)信息;獲取所述上級(jí)平臺(tái)的第一目標(biāo)信息,將所述第二請(qǐng)求頭的第二目標(biāo)信息替換為所述第一目標(biāo)信息,并將替換后的第二請(qǐng)求頭發(fā)送至所述緩存中間件;所述關(guān)鍵信息包括所述替換后的第二請(qǐng)求頭。
10.一種計(jì)算機(jī)設(shè)備,包括存儲(chǔ)器和處理器,所述存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)程序,其特征在于,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)權(quán)利要求1至權(quán)利要求6中任一項(xiàng)所述的方法的步驟。