本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,特別涉及一種通信預(yù)處理方法、客戶端及服務(wù)端。
背景技術(shù):
對(duì)于服務(wù)端-客戶端類型的業(yè)務(wù)系統(tǒng),各個(gè)客戶端與服務(wù)端進(jìn)行通信之前,需要進(jìn)行通信預(yù)處理。
傳統(tǒng)的應(yīng)用場(chǎng)景中,客戶端直接部署在物理機(jī)上,客戶端可根據(jù)物理機(jī)的物理地址確定其對(duì)應(yīng)的特征信息,進(jìn)而向服務(wù)端發(fā)送攜帶該特征信息的上線請(qǐng)求,由于特征信息可以對(duì)客戶端進(jìn)行唯一標(biāo)識(shí),服務(wù)端在接收到客戶端發(fā)送的上線請(qǐng)求后,即可向客戶端發(fā)送注冊(cè)成功消息,完成客戶端與服務(wù)端之間的通信預(yù)處理過程,客戶端則可根據(jù)該特征下次與服務(wù)端進(jìn)行通信,服務(wù)端根據(jù)不同通信消息對(duì)應(yīng)的特征信息來區(qū)分不同的客戶端。
但是,隨著虛擬化技術(shù)發(fā)展日漸成熟,同一個(gè)物理機(jī)上可部署多個(gè)虛擬機(jī),每一個(gè)虛擬機(jī)上均可部署客戶端,且虛擬機(jī)可在不同的物理機(jī)之間進(jìn)行遷移或復(fù)制,因此,根據(jù)物理機(jī)的物理地址生成的特征信息可能無法用于對(duì)客戶端進(jìn)行唯一標(biāo)識(shí),導(dǎo)致客戶端與服務(wù)端之間無法進(jìn)行有效通信。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供了一種通信預(yù)處理方法、客戶端及服務(wù)端,可確??蛻舳伺c服務(wù)端之間能夠進(jìn)行有效通信。
第一方面,本發(fā)明提供了一種通信預(yù)處理方法,應(yīng)用于服務(wù)端端,包括:
接收客戶端發(fā)送的第一上線請(qǐng)求,其中,所述上線請(qǐng)求攜帶所述客戶端對(duì)應(yīng)的第一網(wǎng)絡(luò)地址;
確定接收所述第一上線請(qǐng)求時(shí)對(duì)應(yīng)的第一接收時(shí)刻,并隨機(jī)生成對(duì)應(yīng)所述客戶端的第一隨機(jī)數(shù);
根據(jù)所述第一接收時(shí)刻、所述第一網(wǎng)絡(luò)地址和所述第一隨機(jī)數(shù)生成對(duì)應(yīng)所述客戶端的第一特征信息;
向所述客戶端發(fā)送攜帶所述第一特征信息的注冊(cè)成功消息,以使所述客戶端接收并解析所述注冊(cè)成功消息以獲取所述第一特征信息。
優(yōu)選地,
還包括:預(yù)先設(shè)置指定存儲(chǔ)區(qū)域;
在所述根據(jù)所述第一接收時(shí)刻、所述第一網(wǎng)絡(luò)地址和所述第一隨機(jī)數(shù)生成對(duì)應(yīng)所述客戶端的第一特征信息之后,還包括:
將所述第一網(wǎng)絡(luò)地址和所述第一特征信息組合成注冊(cè)記錄,并存儲(chǔ)至所述指定存儲(chǔ)區(qū)域;
接收所述客戶端發(fā)送的第二上線請(qǐng)求,其中,所述第二上線請(qǐng)求攜帶所述客戶端對(duì)應(yīng)的第二網(wǎng)絡(luò)地址和第一特征信息;
查詢所述指定存儲(chǔ)區(qū)域內(nèi)存儲(chǔ)的各個(gè)所述注冊(cè)記錄,以確定存儲(chǔ)的各個(gè)所述注冊(cè)記錄中是否存有包括所述第一特征信息和所述第二網(wǎng)絡(luò)地址的注冊(cè)記錄,如果是,則執(zhí)行步驟A1;否則,執(zhí)行步驟A2;
A1:向所述客戶端發(fā)送注冊(cè)成功消息;
A2:接收操作指令,并根據(jù)所述操作指令進(jìn)行相應(yīng)的業(yè)務(wù)處理。
優(yōu)選地,所述A2包括:
接收遷移確定指令;
根據(jù)所述第一特征信息查詢所述指定存儲(chǔ)區(qū)域,以確定包括所述第一特征信息的目標(biāo)注冊(cè)記錄;
根據(jù)所述第二網(wǎng)絡(luò)地址修改所述目標(biāo)注冊(cè)記錄;
向所述客戶端發(fā)送注冊(cè)成功消息;
或,
接收復(fù)制確定指令;
確定接收所述第二上線消息時(shí)對(duì)應(yīng)的第二接收時(shí)刻,并隨機(jī)生成對(duì)應(yīng)所述客戶端的第二隨機(jī)數(shù);
根據(jù)所述第二接收時(shí)刻、所述第二網(wǎng)絡(luò)地址和所述第二隨機(jī)數(shù)生成對(duì)應(yīng)所述客戶端的第二特征信息;
將所述第二網(wǎng)絡(luò)地址和所述第二特征信息組合成注冊(cè)記錄,并存儲(chǔ)至所述指定存儲(chǔ)區(qū)域;
向所述客戶端發(fā)送攜帶所述第二特征信息的注冊(cè)成功消息;
或,
接收禁止通信指令;
向所述客戶端發(fā)送注冊(cè)失敗消息。
第二方面,本發(fā)明實(shí)施例提供了一種通信預(yù)處理方法,應(yīng)用于客戶端,包括:
在安裝當(dāng)前客戶端的負(fù)載機(jī)第一次啟動(dòng)時(shí),確定所述負(fù)載機(jī)的第一網(wǎng)絡(luò)地址;
向服務(wù)端發(fā)送攜帶所述第一網(wǎng)絡(luò)地址的第二上線請(qǐng)求;
接收并解析所述服務(wù)端發(fā)送的注冊(cè)成功消息以獲取第一特征信息。
優(yōu)選地,
當(dāng)所述負(fù)載主機(jī)為虛擬機(jī)時(shí),在所述接收并解析所述服務(wù)端發(fā)送的注冊(cè)成功消息以獲取第一特征信息之后,還包括:
存儲(chǔ)所述第一特征信息;
在安裝當(dāng)前客戶端的虛擬機(jī)第n次啟動(dòng)時(shí),確定所述虛擬機(jī)對(duì)應(yīng)的第二網(wǎng)絡(luò)地址,其中,n為不小于1的整數(shù);
向服務(wù)端發(fā)送第二上線請(qǐng)求,其中所述第二上線請(qǐng)求攜帶存儲(chǔ)的所述第一特征信息和確定的所述第二網(wǎng)絡(luò)地址;
接收所述服務(wù)端發(fā)送的注冊(cè)成功消息,或,接收所述服務(wù)端發(fā)送的攜帶第二特征信息的注冊(cè)成功消息,或,接收所述服務(wù)端發(fā)送的注冊(cè)失敗消息。
第三方面,本發(fā)明實(shí)施例提供了一種服務(wù)端,包括:
第一信息接收模塊,用于接收客戶端發(fā)送的第一上線請(qǐng)求,其中,所述上線請(qǐng)求攜帶所述客戶端對(duì)應(yīng)的第一網(wǎng)絡(luò)地址;
第一處理模塊,用于確定接收所述第一上線請(qǐng)求時(shí)對(duì)應(yīng)的第一接收時(shí)刻,并隨機(jī)生成對(duì)應(yīng)所述客戶端的第一隨機(jī)數(shù);
特征信息生成模塊,用于根據(jù)所述第一接收時(shí)刻、所述第一網(wǎng)絡(luò)地址和所述第一隨機(jī)數(shù)生成對(duì)應(yīng)所述客戶端的第一特征信息;
第一信息發(fā)送模塊,用于向所述客戶端發(fā)送攜帶所述第一特征信息的注冊(cè)成功消息,以使所述客戶端接收并解析所述注冊(cè)成功消息以獲取所述第一特征信息。
優(yōu)選地,還包括:
設(shè)置模塊,用于預(yù)先設(shè)置指定存儲(chǔ)區(qū)域;
存儲(chǔ)處理模塊,用于將所述第一網(wǎng)絡(luò)地址和所述第一特征信息組合成注冊(cè)記錄,并存儲(chǔ)至所述指定存儲(chǔ)區(qū)域;
第二信息接收模塊,用于接收所述客戶端發(fā)送的第二上線請(qǐng)求,其中,所述第二上線請(qǐng)求攜帶所述客戶端對(duì)應(yīng)的第二網(wǎng)絡(luò)地址和第一特征信息;
查詢處理模塊,用于查詢所述指定存儲(chǔ)區(qū)域內(nèi)存儲(chǔ)的各個(gè)所述注冊(cè)記錄,以確定存儲(chǔ)的各個(gè)所述注冊(cè)記錄中是否存有包括所述第一特征信息和所述第二網(wǎng)絡(luò)地址的注冊(cè)記錄,如果是,則觸發(fā)第二信息發(fā)送模塊;否則,觸發(fā)第二處理模塊;
所述第二信息發(fā)送模塊,用于向所述客戶端發(fā)送注冊(cè)成功消息;
所述第二處理模塊,用于接收操作指令,并根據(jù)所述操作指令進(jìn)行相應(yīng)的業(yè)務(wù)處理。
優(yōu)選地,
所述第二處理模塊,包括:第一指令接收單元、查詢單元、第一處理單元及第一信息發(fā)送單元;其中,
所述第一指令接收單元,用于接收遷移確定指令;
所述查詢單元,用于根據(jù)所述第一特征信息查詢所述指定存儲(chǔ)區(qū)域,以確定包括所述第一特征信息的目標(biāo)注冊(cè)記錄;
所述第一處理單元,用于根據(jù)所述第二網(wǎng)絡(luò)地址修改所述目標(biāo)注冊(cè)記錄;
所述第一信息發(fā)送單元,用于向所述客戶端發(fā)送注冊(cè)成功消息;
或,
所述第二處理模塊,包括:第二指令接收單元、第二處理單元、存儲(chǔ)處理單元及第二信息發(fā)送單元;其中,
所述第二指令接收單元,用于接收復(fù)制確定指令;
所述第二處理單元,用于確定接收所述第二上線消息時(shí)對(duì)應(yīng)的第二接收時(shí)刻,并隨機(jī)生成對(duì)應(yīng)所述客戶端的第二隨機(jī)數(shù);
特征信息生成單元,用于根據(jù)所述第二接收時(shí)刻、所述第二網(wǎng)絡(luò)地址和所述第二隨機(jī)數(shù)生成對(duì)應(yīng)所述客戶端的第二特征信息;
所述存儲(chǔ)處理單元,用于將所述第二網(wǎng)絡(luò)地址和所述第二特征信息組合成注冊(cè)記錄,并存儲(chǔ)至所述指定存儲(chǔ)區(qū)域;
所述第二信息發(fā)送單元,用于向所述客戶端發(fā)送攜帶所述第二特征信息的注冊(cè)成功消息;
或,
所述第二處理模塊,包括:第三指令接收單元及第三信息發(fā)送單元;其中,
所述第三指令接收單元,用于接收禁止通信指令;
所述第三信息發(fā)送單元,用于向所述客戶端發(fā)送注冊(cè)失敗消息。
第四方面,本發(fā)明實(shí)施例提供了一種客戶端,包括:
第一確定模塊,用于在安裝當(dāng)前客戶端的負(fù)載機(jī)第一次啟動(dòng)時(shí),確定所述負(fù)載機(jī)的第一網(wǎng)絡(luò)地址;
第三信息發(fā)送模塊,用于向服務(wù)端發(fā)送攜帶所述第一網(wǎng)絡(luò)地址的第二上線請(qǐng)求;
第三信息接收模塊,用于接收并解析所述服務(wù)端發(fā)送的注冊(cè)成功消息以獲取第一特征信息。
優(yōu)選地,還包括:
存儲(chǔ)模塊,用于存儲(chǔ)所述第一特征信息;
第二確定模塊,用于在安裝當(dāng)前客戶端的虛擬機(jī)第n次啟動(dòng)時(shí),確定所述虛擬機(jī)對(duì)應(yīng)的第二網(wǎng)絡(luò)地址,其中,n為不小于1的整數(shù);
第四信息發(fā)送模塊,用于向服務(wù)端發(fā)送第二上線請(qǐng)求,其中所述第二上線請(qǐng)求攜帶存儲(chǔ)的所述第一特征信息和確定的所述第二網(wǎng)絡(luò)地址;
第四信息接收模塊,用于接收所述服務(wù)端發(fā)送的注冊(cè)成功消息,或,接收所述服務(wù)端發(fā)送的攜帶第二特征信息的注冊(cè)成功消息,或,接收所述服務(wù)端發(fā)送的注冊(cè)失敗消息。
本發(fā)明實(shí)施例提供了一種通信預(yù)處理方法、客戶端及服務(wù)端,在應(yīng)用于服務(wù)端的通信預(yù)處理方法中,服務(wù)端在接收到攜帶客戶端對(duì)應(yīng)的第一網(wǎng)絡(luò)地址的第一上線請(qǐng)求之后,即可確定接收第一上線請(qǐng)求時(shí)對(duì)應(yīng)的第一接收時(shí)刻,并隨機(jī)生成對(duì)應(yīng)客戶端的第一隨機(jī)數(shù),然后根據(jù)第一接收時(shí)刻、第一網(wǎng)絡(luò)地址和第一隨機(jī)數(shù)生成對(duì)應(yīng)客戶端的第一特征信息,進(jìn)而向客戶端發(fā)送攜帶該第一特征信息的注冊(cè)成功消息,即可使客戶端接收并解析注冊(cè)成功消息以獲取該第一特征信息,完成客戶端與服務(wù)端之間的通信預(yù)處理過程。由于第一特征信息由服務(wù)端根據(jù)客戶端對(duì)應(yīng)的第一網(wǎng)絡(luò)地址、接收上線請(qǐng)求時(shí)對(duì)應(yīng)的第一接收時(shí)刻及第一隨機(jī)數(shù)生成,使得第一特征信息可以用于對(duì)客戶端進(jìn)行唯一標(biāo)識(shí)。因此,通過本發(fā)明實(shí)施例提供的技術(shù)方案完成客戶端與服務(wù)端之間的通信預(yù)處理過程,可確??蛻舳伺c服務(wù)端之間能夠進(jìn)行有效通信。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是本發(fā)明一實(shí)施例提供的一種通信預(yù)處理方法的流程圖;
圖2是本發(fā)明一實(shí)施例提供的另一種通信預(yù)處理方法的流程圖;
圖3是本發(fā)明一實(shí)施例提供的一種服務(wù)端的結(jié)構(gòu)示意圖;
圖4是本發(fā)明一實(shí)施例提供的另一種服務(wù)端的結(jié)構(gòu)示意圖;
圖5是本發(fā)明一實(shí)施例提供的一種服務(wù)端中,第二處理模塊的結(jié)構(gòu)示意圖;
圖6是本發(fā)明一實(shí)施例提供的一種客戶端的結(jié)構(gòu)示意圖;
圖7是本發(fā)明一實(shí)施例提供的另一種客戶端的結(jié)構(gòu)示意圖;
圖8是本發(fā)明一實(shí)施例提供的一種業(yè)務(wù)系統(tǒng)的結(jié)構(gòu)示意圖;
圖9是本發(fā)明一實(shí)施例提供的又一種通信預(yù)處理方法的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例,基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)的前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
如圖1所示,本發(fā)明實(shí)施例提供了一種通信預(yù)處理方法,應(yīng)用于服務(wù)端,包括:
步驟101,接收客戶端發(fā)送的第一上線請(qǐng)求,其中,所述上線請(qǐng)求攜帶所述客戶端對(duì)應(yīng)的第一網(wǎng)絡(luò)地址;
步驟102,確定接收所述第一上線請(qǐng)求時(shí)對(duì)應(yīng)的第一接收時(shí)刻,并隨機(jī)生成對(duì)應(yīng)所述客戶端的第一隨機(jī)數(shù);
步驟103,根據(jù)所述第一接收時(shí)刻、所述第一網(wǎng)絡(luò)地址和所述第一隨機(jī)數(shù)生成對(duì)應(yīng)所述客戶端的第一特征信息;
步驟104,向所述客戶端發(fā)送攜帶所述第一特征信息的注冊(cè)成功消息,以使所述客戶端接收并解析所述注冊(cè)成功消息以獲取所述第一特征信息。
本發(fā)明上述實(shí)施例中,服務(wù)端在接收到攜帶客戶端對(duì)應(yīng)的第一網(wǎng)絡(luò)地址的第一上線請(qǐng)求之后,即可確定接收第一上線請(qǐng)求時(shí)對(duì)應(yīng)的第一接收時(shí)刻,并隨機(jī)生成對(duì)應(yīng)客戶端的第一隨機(jī)數(shù),然后根據(jù)第一接收時(shí)刻、第一網(wǎng)絡(luò)地址和第一隨機(jī)數(shù)生成對(duì)應(yīng)客戶端的第一特征信息,進(jìn)而向客戶端發(fā)送攜帶該第一特征信息的注冊(cè)成功消息,即可使客戶端接收并解析注冊(cè)成功消息以獲取該第一特征信息,完成客戶端與服務(wù)端之間的通信預(yù)處理過程。由于第一特征信息由服務(wù)端根據(jù)客戶端對(duì)應(yīng)的第一網(wǎng)絡(luò)地址、接收上線請(qǐng)求時(shí)對(duì)應(yīng)的第一接收時(shí)刻及第一隨機(jī)數(shù)生成,使得第一特征信息可以用于對(duì)客戶端進(jìn)行唯一標(biāo)識(shí)。因此,通過本發(fā)明實(shí)施例提供的技術(shù)方案完成客戶端與服務(wù)端之間的通信預(yù)處理過程,可確??蛻舳伺c服務(wù)端之間能夠進(jìn)行有效通信。
應(yīng)當(dāng)理解的是,客戶端的網(wǎng)絡(luò)地址,具體可以是部署客戶端的物理機(jī)或虛擬機(jī)對(duì)應(yīng)的IP(Internet Protocol,網(wǎng)絡(luò)之間互聯(lián)的協(xié)議)地址。
進(jìn)一步的,為了實(shí)現(xiàn)完成服務(wù)端與已經(jīng)注冊(cè)過的客戶端之間的通信預(yù)處理過程,即服務(wù)端在本次預(yù)處理過程之前,已經(jīng)與客戶端之間發(fā)生過通信時(shí),本發(fā)明一個(gè)實(shí)施例中,還包括:預(yù)先設(shè)置指定存儲(chǔ)區(qū)域;
在所述根據(jù)所述第一接收時(shí)刻、所述第一網(wǎng)絡(luò)地址和所述第一隨機(jī)數(shù)生成對(duì)應(yīng)所述客戶端的第一特征信息之后,還包括:
將所述第一網(wǎng)絡(luò)地址和所述第一特征信息組合成注冊(cè)記錄,并存儲(chǔ)至所述指定存儲(chǔ)區(qū)域;
接收所述客戶端發(fā)送的第二上線請(qǐng)求,其中,所述第二上線請(qǐng)求攜帶所述客戶端對(duì)應(yīng)的第二網(wǎng)絡(luò)地址和第一特征信息;
查詢所述指定存儲(chǔ)區(qū)域內(nèi)存儲(chǔ)的各個(gè)所述注冊(cè)記錄,以確定存儲(chǔ)的各個(gè)所述注冊(cè)記錄中是否存有包括所述第一特征信息和所述第二網(wǎng)絡(luò)地址的注冊(cè)記錄,如果是,則執(zhí)行步驟A1;否則,執(zhí)行步驟A2;
A1:向所述客戶端發(fā)送注冊(cè)成功消息;
A2:接收操作指令,并根據(jù)所述操作指令進(jìn)行相應(yīng)的業(yè)務(wù)處理。
本發(fā)明上述實(shí)施例中,當(dāng)上線消息攜帶第二網(wǎng)絡(luò)地址和第一特征信息時(shí),則說明服務(wù)端已經(jīng)與該客戶端進(jìn)行過通信,且第一特征信息是由服務(wù)端生成并發(fā)送給該客戶端的。此時(shí),當(dāng)指定存儲(chǔ)區(qū)域中存儲(chǔ)有包括第一特征信息和第二網(wǎng)絡(luò)地址的注冊(cè)記錄時(shí),則說明客戶端未發(fā)生遷移、復(fù)制。相反的,當(dāng)指定存儲(chǔ)區(qū)域中未存儲(chǔ)有包括第一特征信息和第二網(wǎng)絡(luò)地址的注冊(cè)記錄時(shí),則說明客戶端所依賴的虛擬機(jī)發(fā)生過遷移或復(fù)制,客戶端所依賴的虛擬機(jī)或物理機(jī)正常重啟。同時(shí),針對(duì)于已經(jīng)發(fā)生過遷移或復(fù)制的客戶端發(fā)送的上線消息,可對(duì)其進(jìn)行掛起處理,以使工作人員根據(jù)實(shí)際業(yè)務(wù)需求,判斷客戶端是否發(fā)生正常遷移、復(fù)制或重啟,并進(jìn)行相應(yīng)的處理。
具體地,針對(duì)于客戶端發(fā)生過正常遷移時(shí),可通過相應(yīng)的輸入設(shè)備發(fā)送遷移確定指令,相應(yīng)的,本發(fā)明一個(gè)實(shí)施例中,所述A2包括:
接收遷移確定指令;
根據(jù)所述第一特征信息查詢所述指定存儲(chǔ)區(qū)域,以確定包括所述第一特征信息的目標(biāo)注冊(cè)記錄;
根據(jù)所述第二網(wǎng)絡(luò)地址修改所述目標(biāo)注冊(cè)記錄;
向所述客戶端發(fā)送注冊(cè)成功消息。
針對(duì)于客戶端發(fā)生過正常復(fù)制時(shí),可通過相應(yīng)的輸入設(shè)備發(fā)送復(fù)制確定指令,相應(yīng)的,本發(fā)明一個(gè)實(shí)施例中,所述A2包括:
接收復(fù)制確定指令;
確定接收所述第二上線消息時(shí)對(duì)應(yīng)的第二接收時(shí)刻,并隨機(jī)生成對(duì)應(yīng)所述客戶端的第二隨機(jī)數(shù);
根據(jù)所述第二接收時(shí)刻、所述第二網(wǎng)絡(luò)地址和所述第二隨機(jī)數(shù)生成對(duì)應(yīng)所述客戶端的第二特征信息;
將所述第二網(wǎng)絡(luò)地址和所述第二特征信息組合成注冊(cè)記錄,并存儲(chǔ)至所述指定存儲(chǔ)區(qū)域;
向所述客戶端發(fā)送攜帶所述第二特征信息的注冊(cè)成功消息。
針對(duì)于客戶端發(fā)生過非正常遷移或復(fù)制時(shí),可通過相應(yīng)的輸入設(shè)備發(fā)送禁止通信指令,相應(yīng)的,本發(fā)明一個(gè)實(shí)施例中,所述A2包括:
接收禁止通信指令;
向所述客戶端發(fā)送注冊(cè)失敗消息。
綜上可見,當(dāng)客戶端被安裝到虛擬機(jī)上,通過對(duì)服務(wù)端存儲(chǔ)的注冊(cè)記錄與客戶端對(duì)應(yīng)的網(wǎng)絡(luò)地址和特征信息進(jìn)行比較,以確定出安裝有客戶端的虛擬機(jī)存在正常遷移或復(fù)制之后,如果虛擬機(jī)發(fā)生正常遷移或復(fù)制,則可通過接收相應(yīng)的控制指令并進(jìn)行相應(yīng)的業(yè)務(wù)處理,以實(shí)現(xiàn)對(duì)發(fā)生正常遷移或復(fù)制后形成的新的虛擬機(jī)上的客戶端進(jìn)行唯一標(biāo)識(shí),使得發(fā)生正常遷移或復(fù)制后形成的新的虛擬機(jī)上的客戶端能夠與服務(wù)端進(jìn)行有效通信。
如圖2所示,本發(fā)明實(shí)施例提供了一種通信預(yù)處理方法,應(yīng)用于客戶端,包括:
步驟201,在安裝當(dāng)前客戶端的負(fù)載機(jī)第一次啟動(dòng)時(shí),確定所述負(fù)載機(jī)的第一網(wǎng)絡(luò)地址;
步驟202,向服務(wù)端發(fā)送攜帶所述第一網(wǎng)絡(luò)地址的第二上線請(qǐng)求;
步驟203,接收并解析所述服務(wù)端發(fā)送的注冊(cè)成功消息以獲取第一特征信息。
本發(fā)明一個(gè)實(shí)施例中,當(dāng)所述負(fù)載主機(jī)為虛擬機(jī)時(shí),在所述接收并解析所述服務(wù)端發(fā)送的注冊(cè)成功消息以獲取第一特征信息之后,還包括:
存儲(chǔ)所述第一特征信息;
在安裝當(dāng)前客戶端的虛擬機(jī)第n次啟動(dòng)時(shí),確定所述虛擬機(jī)對(duì)應(yīng)的第二網(wǎng)絡(luò)地址,其中,n為不小于1的整數(shù);
向服務(wù)端發(fā)送第二上線請(qǐng)求,其中所述第二上線請(qǐng)求攜帶存儲(chǔ)的所述第一特征信息和確定的所述第二網(wǎng)絡(luò)地址;
接收所述服務(wù)端發(fā)送的注冊(cè)成功消息,或,接收所述服務(wù)端發(fā)送的攜帶第二特征信息的注冊(cè)成功消息,或,接收所述服務(wù)端發(fā)送的注冊(cè)失敗消息。
如圖3所示,本發(fā)明實(shí)施例提供了一種服務(wù)端,包括:
第一信息接收模塊301,用于接收客戶端發(fā)送的第一上線請(qǐng)求,其中,所述上線請(qǐng)求攜帶所述客戶端對(duì)應(yīng)的第一網(wǎng)絡(luò)地址;
第一處理模塊302,用于確定接收所述第一上線請(qǐng)求時(shí)對(duì)應(yīng)的第一接收時(shí)刻,并隨機(jī)生成對(duì)應(yīng)所述客戶端的第一隨機(jī)數(shù);
特征信息生成模塊303,用于根據(jù)所述第一接收時(shí)刻、所述第一網(wǎng)絡(luò)地址和所述第一隨機(jī)數(shù)生成對(duì)應(yīng)所述客戶端的第一特征信息;
第一信息發(fā)送模塊304,用于向所述客戶端發(fā)送攜帶所述第一特征信息的注冊(cè)成功消息,以使所述客戶端接收并解析所述注冊(cè)成功消息以獲取所述第一特征信息。
如圖4所示,本發(fā)明一個(gè)實(shí)施例中,還包括:
設(shè)置模塊401,用于預(yù)先設(shè)置指定存儲(chǔ)區(qū)域;
存儲(chǔ)處理模塊402,用于將所述第一網(wǎng)絡(luò)地址和所述第一特征信息組合成注冊(cè)記錄,并存儲(chǔ)至所述指定存儲(chǔ)區(qū)域;
第二信息接收模塊403,用于接收所述客戶端發(fā)送的第二上線請(qǐng)求,其中,所述第二上線請(qǐng)求攜帶所述客戶端對(duì)應(yīng)的第二網(wǎng)絡(luò)地址和第一特征信息;
查詢處理模塊404,用于查詢所述指定存儲(chǔ)區(qū)域內(nèi)存儲(chǔ)的各個(gè)所述注冊(cè)記錄,以確定存儲(chǔ)的各個(gè)所述注冊(cè)記錄中是否存有包括所述第一特征信息和所述第二網(wǎng)絡(luò)地址的注冊(cè)記錄,如果是,則觸發(fā)第二信息發(fā)送模塊405;否則,觸發(fā)第二處理模塊406;
所述第二信息發(fā)送模塊405,用于向所述客戶端發(fā)送注冊(cè)成功消息;
所述第二處理模塊406,用于接收操作指令,并根據(jù)所述操作指令進(jìn)行相應(yīng)的業(yè)務(wù)處理。
如圖5所示,本發(fā)明一個(gè)優(yōu)選實(shí)施例中,所述第二處理模塊406,包括:第一指令接收單元4061、查詢單元4062、第一處理單元4063及第一信息發(fā)送單元4064;其中,
所述第一指令接收單元4061,用于接收遷移確定指令;
所述查詢單元4062,用于根據(jù)所述第一特征信息查詢所述指定存儲(chǔ)區(qū)域,以確定包括所述第一特征信息的目標(biāo)注冊(cè)記錄;
所述第一處理單元4063,用于根據(jù)所述第二網(wǎng)絡(luò)地址修改所述目標(biāo)注冊(cè)記錄;
所述第一信息發(fā)送單元4064,用于向所述客戶端發(fā)送注冊(cè)成功消息。
本發(fā)明一個(gè)優(yōu)選實(shí)施例中,所述第二處理模塊406,包括:第二指令接收單元(附圖中未示出)、第二處理單元(附圖中未示出)、存儲(chǔ)處理單元(附圖中未示出)及第二信息發(fā)送單元(附圖中未示出);其中,
所述第二指令接收單元,用于接收復(fù)制確定指令;
所述第二處理單元,用于確定接收所述第二上線消息時(shí)對(duì)應(yīng)的第二接收時(shí)刻,并隨機(jī)生成對(duì)應(yīng)所述客戶端的第二隨機(jī)數(shù);
特征信息生成單元,用于根據(jù)所述第二接收時(shí)刻、所述第二網(wǎng)絡(luò)地址和所述第二隨機(jī)數(shù)生成對(duì)應(yīng)所述客戶端的第二特征信息;
所述存儲(chǔ)處理單元,用于將所述第二網(wǎng)絡(luò)地址和所述第二特征信息組合成注冊(cè)記錄,并存儲(chǔ)至所述指定存儲(chǔ)區(qū)域;
所述第二信息發(fā)送單元,用于向所述客戶端發(fā)送攜帶所述第二特征信息的注冊(cè)成功消息。
本發(fā)明一個(gè)優(yōu)選實(shí)施例中,所述第二處理模塊406,包括:第三指令接收單元(附圖中未示出)及第三信息發(fā)送單元(附圖中未示出);其中,
所述第三指令接收單元,用于接收禁止通信指令;
所述第三信息發(fā)送單元,用于向所述客戶端發(fā)送注冊(cè)失敗消息。
如圖6所示,本發(fā)明實(shí)施例提供了一種客戶端,包括:
第一確定模塊601,用于在安裝當(dāng)前客戶端的負(fù)載機(jī)第一次啟動(dòng)時(shí),確定所述負(fù)載機(jī)的第一網(wǎng)絡(luò)地址;
第三信息發(fā)送模塊602,用于向服務(wù)端發(fā)送攜帶所述第一網(wǎng)絡(luò)地址的第二上線請(qǐng)求;
第三信息接收模塊603,用于接收并解析所述服務(wù)端發(fā)送的注冊(cè)成功消息以獲取第一特征信息。
如圖7所示,本發(fā)明一個(gè)優(yōu)選實(shí)施例中,還包括:
存儲(chǔ)模塊701,用于存儲(chǔ)所述第一特征信息;
第二確定模塊702,用于在安裝當(dāng)前客戶端的虛擬機(jī)第n次啟動(dòng)時(shí),確定所述虛擬機(jī)對(duì)應(yīng)的第二網(wǎng)絡(luò)地址,其中,n為不小于1的整數(shù);
第四信息發(fā)送模塊703,用于向服務(wù)端發(fā)送第二上線請(qǐng)求,其中所述第二上線請(qǐng)求攜帶存儲(chǔ)的所述第一特征信息和確定的所述第二網(wǎng)絡(luò)地址;
第四信息接收模塊704,用于接收所述服務(wù)端發(fā)送的注冊(cè)成功消息,或,接收所述服務(wù)端發(fā)送的攜帶第二特征信息的注冊(cè)成功消息,或,接收所述服務(wù)端發(fā)送的注冊(cè)失敗消息。
如圖8所示,本發(fā)明實(shí)施例提供了一種業(yè)務(wù)系統(tǒng),包括:本發(fā)明任意一個(gè)實(shí)施例提供的服務(wù)端801,以及至少一個(gè)本發(fā)明實(shí)施例任意一個(gè)實(shí)施例提供的客戶端802;其中,每一個(gè)所述客戶端802均與所述服務(wù)端801相連。
上述裝置內(nèi)的各單元之間的信息交互、執(zhí)行過程等內(nèi)容,由于與本發(fā)明方法實(shí)施例基于同一構(gòu)思,具體內(nèi)容可參見本發(fā)明方法實(shí)施例中的敘述,此處不再贅述。
為了更加清楚的說明本發(fā)明的技術(shù)方案,本發(fā)明實(shí)施例提供了一種通信預(yù)處理方法,具體以包括服務(wù)端A和客戶端B1、B2的業(yè)務(wù)系統(tǒng)進(jìn)行舉例,其中,B1和B2分別安裝在虛擬機(jī)C1和C2上,且虛擬機(jī)C2是針對(duì)于虛擬機(jī)C1進(jìn)行復(fù)制后形成的虛擬機(jī),如圖9所示,具體可以通過如下各個(gè)步驟完成客戶端B1、B2分別與服務(wù)端A之間的通信預(yù)處理過程:
步驟901,A預(yù)先設(shè)置指定存儲(chǔ)區(qū)域。
步驟902,B1確定C1的第一網(wǎng)絡(luò)地址。
步驟903,B1向A發(fā)送攜帶第一網(wǎng)絡(luò)地址的第一上線請(qǐng)求。
步驟904,A確定接收B1發(fā)送的第一上線請(qǐng)求時(shí)對(duì)應(yīng)的第一接收時(shí)刻,并隨機(jī)生成對(duì)應(yīng)B1的第一隨機(jī)數(shù)。
步驟905,A根據(jù)第一接收時(shí)刻、第一網(wǎng)絡(luò)地址和第一隨機(jī)數(shù)生成對(duì)應(yīng)B1的第一特征信息。
本發(fā)明實(shí)施例中,在根據(jù)第一接收時(shí)刻、第一網(wǎng)絡(luò)地址和第一隨機(jī)數(shù)生成第一特征信息時(shí),可通過相應(yīng)的摘要算法計(jì)算第一接收時(shí)刻、第一網(wǎng)絡(luò)地址和第一隨機(jī)數(shù)分別對(duì)應(yīng)的第一摘要值、第二摘要值和第三摘要值,通過將第一摘要值、第二摘要值及第三摘要值以相應(yīng)的組合方法(比如再次進(jìn)行摘要計(jì)算)進(jìn)行組合以形成第一特征信息。
步驟906,A將第一上線請(qǐng)求中攜帶的第一網(wǎng)絡(luò)地址和生成的第一特征信息組合成注冊(cè)記錄,并存儲(chǔ)至預(yù)先設(shè)置的指定存儲(chǔ)區(qū)域。
步驟907,A向B1發(fā)送攜帶第一特征信息的上線成功消息。
步驟908,B1解析接收的上線成功消息以獲取第一特征信息。
本發(fā)明實(shí)施例中,步驟901至步驟908實(shí)現(xiàn)服務(wù)端A與客戶端B1之間的通信預(yù)處理過程,B1在獲取到第一特征信息時(shí),則可以根據(jù)第一特征信息與A進(jìn)行相應(yīng)的通信,比如,利用第一特征信息對(duì)B1與A之間進(jìn)行通信時(shí)使用的數(shù)據(jù)隊(duì)列進(jìn)行標(biāo)記,或由B1向A發(fā)送攜帶第一特征信息的通信消息。
應(yīng)當(dāng)理解的是,當(dāng)C1在第n次啟動(dòng)時(shí),B1可確定C1對(duì)應(yīng)的第一網(wǎng)絡(luò)地址,其中,n為不小于1的整數(shù),并將第一網(wǎng)絡(luò)地址和存儲(chǔ)的第一特征信息發(fā)送至A,A在確定出指定存儲(chǔ)區(qū)域中存儲(chǔ)有包括第一網(wǎng)絡(luò)地址和第一特征信息的注冊(cè)記錄時(shí),直接向B1發(fā)送注冊(cè)成功消息以實(shí)現(xiàn)完成A與B1之間的通信預(yù)處理過程,B1則可根據(jù)存儲(chǔ)的第一特征信息與A進(jìn)行相應(yīng)的通信。
本發(fā)明實(shí)施例的下述各個(gè)步驟中,以對(duì)B1所依賴的虛擬機(jī)C1進(jìn)行復(fù)制,形成虛擬機(jī)成為例,虛擬機(jī)C2上的客戶端這里具體以B2對(duì)其進(jìn)行命名,實(shí)現(xiàn)B2與A之間的通信預(yù)處理過程時(shí),具體實(shí)現(xiàn)過程可以包括如下步驟909至916。
步驟909,B2在C2啟動(dòng)時(shí),確定C2對(duì)應(yīng)的第二網(wǎng)絡(luò)地址。
這里,由于C2是對(duì)C1進(jìn)行復(fù)制以形成的虛擬機(jī),因此,C2的啟動(dòng)次數(shù)為C2的實(shí)際啟動(dòng)次數(shù),與形成C2之前C1對(duì)應(yīng)的啟動(dòng)次數(shù)的和。
同時(shí),C2與C1相同的存儲(chǔ)有A發(fā)送的第一特征信息。
步驟910,B2向A發(fā)送攜帶存儲(chǔ)的第一特征信息和確定的第二網(wǎng)絡(luò)地址的第二上線請(qǐng)求。
步驟911,A接收復(fù)制確定指令。
本發(fā)明實(shí)施例中,A在接收到攜帶第一特征信息和第二網(wǎng)絡(luò)地址的第二上線請(qǐng)求時(shí),可對(duì)其進(jìn)行掛起處理。具體地,掛起處理指的是暫時(shí)不回復(fù)并且存儲(chǔ)B2發(fā)送的第二上線消息,等待用戶在通過相應(yīng)的外部設(shè)備發(fā)送相應(yīng)的操作指令;比如,在確定出B2所依賴的虛擬機(jī)C2為正產(chǎn)遷移時(shí),可發(fā)送遷移確定指令;在確定出B2所依賴的虛擬機(jī)C2為正產(chǎn)復(fù)制時(shí),可發(fā)送復(fù)制確定指令;在確定出虛擬機(jī)C2發(fā)生非正常遷移或復(fù)制時(shí),可發(fā)送禁止通信指令。
本發(fā)明實(shí)施例僅以虛擬機(jī)C2為正常復(fù)制時(shí)舉例。
步驟912,A確定接收第二上線消息時(shí)對(duì)應(yīng)的第二接收時(shí)刻,并隨機(jī)生成對(duì)應(yīng)B2的第二隨機(jī)數(shù)。
步驟913,A根據(jù)第二接收時(shí)刻、第二網(wǎng)絡(luò)地址和第二隨機(jī)數(shù)生成對(duì)應(yīng)B2的第二特征信息。
步驟914,A將第二網(wǎng)絡(luò)地址和第二特征信息組合成注冊(cè)記錄,并存儲(chǔ)至指定存儲(chǔ)區(qū)域。
步驟915,A向B2發(fā)送攜帶第二特征信息的注冊(cè)成功消息。
步驟916,B2解析接收的注冊(cè)成功消息以獲取第二特征信息。
如此,完成B2與A之間的通信預(yù)處理過程,B2則可利用獲取的第二特征信息與A進(jìn)行相應(yīng)的通信。
綜上所述,本發(fā)明各個(gè)實(shí)施例至少具有如下有益效果:
1、本發(fā)明一實(shí)施例中,服務(wù)端在接收到攜帶客戶端對(duì)應(yīng)的第一網(wǎng)絡(luò)地址的第一上線請(qǐng)求之后,即可確定接收第一上線請(qǐng)求時(shí)對(duì)應(yīng)的第一接收時(shí)刻,并隨機(jī)生成對(duì)應(yīng)客戶端的第一隨機(jī)數(shù),然后根據(jù)第一接收時(shí)刻、第一網(wǎng)絡(luò)地址和第一隨機(jī)數(shù)生成對(duì)應(yīng)客戶端的第一特征信息,進(jìn)而向客戶端發(fā)送攜帶該第一特征信息的注冊(cè)成功消息,即可使客戶端接收并解析注冊(cè)成功消息以獲取該第一特征信息,完成客戶端與服務(wù)端之間的通信預(yù)處理過程。由于第一特征信息由服務(wù)端根據(jù)客戶端對(duì)應(yīng)的第一網(wǎng)絡(luò)地址、接收上線請(qǐng)求時(shí)對(duì)應(yīng)的第一接收時(shí)刻及第一隨機(jī)數(shù)生成,使得第一特征信息可以用于對(duì)客戶端進(jìn)行唯一標(biāo)識(shí)。因此,通過本發(fā)明實(shí)施例提供的技術(shù)方案完成客戶端與服務(wù)端之間的通信預(yù)處理過程,可確保客戶端與服務(wù)端之間能夠進(jìn)行有效通信。
2、本發(fā)明一實(shí)施例中,當(dāng)客戶端被安裝到虛擬機(jī)上,通過對(duì)服務(wù)端存儲(chǔ)的注冊(cè)記錄與客戶端對(duì)應(yīng)的網(wǎng)絡(luò)地址和特征信息進(jìn)行比較,以確定出安裝有客戶端的虛擬機(jī)存在正常遷移或復(fù)制之后,如果虛擬機(jī)發(fā)生正常遷移或復(fù)制,則可通過接收相應(yīng)的控制指令并進(jìn)行相應(yīng)的業(yè)務(wù)處理,以實(shí)現(xiàn)對(duì)發(fā)生正常遷移或復(fù)制后形成的新的虛擬機(jī)上的客戶端進(jìn)行唯一標(biāo)識(shí),使得發(fā)生正常遷移或復(fù)制后形成的新的虛擬機(jī)上的客戶端能夠與服務(wù)端進(jìn)行有效通信。
需要說明的是,在本文中,諸如第一和第二之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)······”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同因素。
最后需要說明的是:以上所述僅為本發(fā)明的較佳實(shí)施例,僅用于說明本發(fā)明的技術(shù)方案,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi)所做的任何修改、等同替換、改進(jìn)等,均包含在本發(fā)明的保護(hù)范圍內(nèi)。