一種信息傳輸?shù)姆椒?、裝置及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計算機(jī)通信技術(shù)領(lǐng)域,特別涉及一種信息傳輸?shù)姆椒?、裝置及系統(tǒng)。
【背景技術(shù)】
[0002]心跳消息(Heartbeat Message)是一種發(fā)送端發(fā)送到接收端的消息,這種消息可以讓接收端確定發(fā)送端是否以及何時出現(xiàn)故障或終止。通常,心跳消息從發(fā)送端啟動時開始發(fā)送,直到發(fā)送端關(guān)閉,期間發(fā)送端會不間斷的發(fā)送周期性或重復(fù)消息。當(dāng)接收端在某個消息接收周期內(nèi)未收到消息,接收端可能會認(rèn)為發(fā)送端已經(jīng)關(guān)閉、出現(xiàn)故障、或者當(dāng)前網(wǎng)絡(luò)不可用,從而斷開連接。而指令信息是一種指示接收端執(zhí)行某種操作的命令信息
[0003]目前,無論是心跳信息還是指令信息,發(fā)送端都采用同一個進(jìn)程進(jìn)行傳輸。具體可包括:發(fā)送端在一進(jìn)程上周期性發(fā)送心跳消息,并在該進(jìn)程上間隔心跳消息發(fā)送指令信息。采用同一進(jìn)程傳輸心跳信息和指令信息時,如果指令比較多,即指令信息比較大,發(fā)送指令信息的時間比較長,這樣,心跳信息就不能按照原有的周期進(jìn)行發(fā)送了,因此,接收端可能會認(rèn)為接收端出現(xiàn)故障或者當(dāng)前網(wǎng)絡(luò)不可用,從而斷開連接,從而,降低了網(wǎng)絡(luò)連接的可靠性,也降低了容錯處理的正確率。
【發(fā)明內(nèi)容】
[0004]本發(fā)明提供一種信息傳輸?shù)姆椒ê脱b置,用以提高網(wǎng)絡(luò)連接的可靠性。
[0005]本發(fā)明提供一種信息傳輸?shù)姆椒?,包?
[0006]運(yùn)行第一進(jìn)程向接收端發(fā)送心跳信息;
[0007]運(yùn)行第二進(jìn)程向所述接收端發(fā)送指令信息。
[0008]本發(fā)明實(shí)施例的一些有益效果可以包括:
[0009]采用兩個進(jìn)程分別發(fā)送心跳信息與指令信息,這樣,發(fā)送心跳信息與發(fā)送指令信息互不干擾,從而,不會因?yàn)榘l(fā)送指令信息而延誤了心跳信息的發(fā)送,減少了接收端因不能準(zhǔn)時接收到心跳信息而導(dǎo)致網(wǎng)絡(luò)連接出錯的幾率,提高了網(wǎng)絡(luò)連接的可靠性。
[0010]本發(fā)明一實(shí)施例中,當(dāng)有至少兩個接收端時,所述運(yùn)行第一進(jìn)程向接收端發(fā)送心跳信息包括:
[0011]運(yùn)行所述第一進(jìn)程向每個接收端輪詢發(fā)送所述心跳信息。
[0012]這樣,信息傳輸?shù)倪^程可應(yīng)用于包括多個接收端的網(wǎng)絡(luò)系統(tǒng)中。
[0013]本發(fā)明一實(shí)施例中,所述第一進(jìn)程與所述第二進(jìn)程之間進(jìn)行端口復(fù)用。
[0014]可見,第二進(jìn)程與第二進(jìn)程之間可進(jìn)行端口復(fù)用,也就是第二進(jìn)程與第二進(jìn)程之間采用了多路復(fù)用1的技術(shù)。從而,可合理使用發(fā)送端的端口,節(jié)省了資源。
[0015]本發(fā)明一實(shí)施例中,當(dāng)運(yùn)行所述第一進(jìn)程向當(dāng)前接收端發(fā)送所述心跳信息失敗時,通知所述第二進(jìn)程停止向所述當(dāng)前接收端發(fā)送所述指令信息。
[0016]可見,在心跳信息發(fā)送失敗后,及時通知第二進(jìn)程停止向當(dāng)前接收端發(fā)送指令信息。這樣減少了運(yùn)行負(fù)擔(dān),也不會造成信息的丟失。
[0017]本發(fā)明提供一種信息傳輸?shù)难b置,包括:
[0018]第一運(yùn)行單元,用于運(yùn)行第一進(jìn)程向接收端發(fā)送心跳信息;
[0019]第二運(yùn)行單元,用于運(yùn)行第二進(jìn)程向所述接收端發(fā)送指令信息。
[0020]本發(fā)明一實(shí)施例中,所述第一運(yùn)行單元,具體用于當(dāng)有至少兩個接收端時,運(yùn)行所述第一進(jìn)程向每個接收端輪詢發(fā)送所述心跳信息。
[0021]本發(fā)明一實(shí)施例中,該裝置還包括:
[0022]通知單元,用于當(dāng)運(yùn)行所述第一進(jìn)程向當(dāng)前接收端發(fā)送所述心跳信息失敗時,通知所述第二進(jìn)程停止向所述當(dāng)前接收端發(fā)送所述指令信息,其中,所述第一進(jìn)程與所述第二進(jìn)程之間進(jìn)行端口復(fù)用。
[0023]可見,信息傳輸?shù)难b置可采用兩個進(jìn)程分別發(fā)送心跳信息與指令信息,這樣,發(fā)送心跳信息與發(fā)送指令信息互不干擾,從而,不會因?yàn)榘l(fā)送指令信息而延誤了心跳信息的發(fā)送,減少了接收端因不能準(zhǔn)時接收到心跳信息而導(dǎo)致網(wǎng)絡(luò)連接出錯的幾率,提高了網(wǎng)絡(luò)連接的可靠性。
[0024]另外,信息傳輸?shù)难b置在心跳信息發(fā)送失敗后,及時通知第二進(jìn)程停止向當(dāng)前接收端發(fā)送指令信息。這樣減少了運(yùn)行負(fù)擔(dān),也不會造成信息的丟失。
[0025]本發(fā)明提供一種信息傳輸?shù)南到y(tǒng),包括:
[0026]發(fā)送端,用于運(yùn)行第一進(jìn)程向接收端發(fā)送心跳信息,以及運(yùn)行第二進(jìn)程向所述接收端發(fā)送指令信息;
[0027]接收端,用于接收所述發(fā)送端發(fā)送的所述心跳信息以及所述指令信息,并根據(jù)所述心跳信息確定與所述發(fā)送端組成的網(wǎng)絡(luò)連接是否出現(xiàn)故障。
[0028]本發(fā)明一實(shí)施例中,所述發(fā)送端,具體用于當(dāng)所述系統(tǒng)包括至少兩個接收端時,運(yùn)行所述第一進(jìn)程向每個接收端輪詢發(fā)送所述心跳信息。
[0029]本發(fā)明一實(shí)施例中,所述發(fā)送端,還用于當(dāng)運(yùn)行所述第一進(jìn)程向當(dāng)前接收端發(fā)送所述心跳信息失敗時,通知所述第二進(jìn)程停止向所述當(dāng)前接收端發(fā)送所述指令信息,其中,所述第一進(jìn)程與所述第二進(jìn)程之間進(jìn)行端口復(fù)用。
[0030]信息傳輸?shù)南到y(tǒng),包括發(fā)送端以及至少一個接收端,發(fā)送端分別采用了兩個進(jìn)程來運(yùn)行心跳信息與指令信息的發(fā)送,,從而,不會因?yàn)榘l(fā)送指令信息而延誤了心跳信息的發(fā)送,減少了接收端因不能準(zhǔn)時接收到心跳信息而導(dǎo)致網(wǎng)絡(luò)連接出錯的幾率,提高了網(wǎng)絡(luò)連接的可靠性。
[0031]本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過在所寫的說明書、權(quán)利要求書、以及附圖中所特別指出的結(jié)構(gòu)來實(shí)現(xiàn)和獲得。
[0032]下面通過附圖和實(shí)施例,對本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。
【附圖說明】
[0033]附圖用來提供對本發(fā)明的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與本發(fā)明的實(shí)施例一起用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的限制。在附圖中:
[0034]圖1為本發(fā)明實(shí)施例一中信息傳輸?shù)牧鞒虉D;
[0035]圖2為本發(fā)明實(shí)施例二中信息傳輸?shù)牧鞒虉D;
[0036]圖3為本發(fā)明實(shí)施例三中信息傳輸?shù)难b置的結(jié)構(gòu)圖;
[0037]圖4為本發(fā)明實(shí)施例四中信息傳輸?shù)南到y(tǒng)的架構(gòu)圖。
【具體實(shí)施方式】
[0038]以下結(jié)合附圖對本發(fā)明的優(yōu)選實(shí)施例進(jìn)行說明,應(yīng)當(dāng)理解,此處所描述的優(yōu)選實(shí)施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。
[0039]實(shí)施例一,圖1為本發(fā)明實(shí)施例中一種信息傳輸?shù)牧鞒虉D。如圖1所示,包括:
[0040]步驟101:運(yùn)行第一進(jìn)程向接收端發(fā)送心跳信息。
[0041]在本發(fā)明實(shí)施例中,發(fā)送端向接收端發(fā)送心跳信息,通過心跳信息,接收端可確定發(fā)送端是否以及何時出現(xiàn)故障或終止,從而,也可確定發(fā)送端與接收端組成的網(wǎng)絡(luò)連接是否以及何時出現(xiàn)故障。
[0042]發(fā)送端可運(yùn)行一個單獨(dú)的進(jìn)程來發(fā)送心跳信息,這里,發(fā)送端可運(yùn)行第一進(jìn)程周期性地發(fā)送心跳信息給接收端。而當(dāng)有兩個或多個接收端,及至少兩個接收端時,則發(fā)送端可運(yùn)行第一進(jìn)程周期性地向每個接收端輪詢發(fā)送心跳信息。
[0043]發(fā)送端可為服務(wù)器,客戶端或其他的任一網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)備。
[0044]步驟102:運(yùn)行第二進(jìn)程向接收端發(fā)送指令信息。
[0045]本發(fā)明實(shí)施例中,發(fā)送端可以進(jìn)行多進(jìn)程操作,心跳信息通過一個單獨(dú)的進(jìn)程來發(fā)送,而指令信息則可通過另一個進(jìn)行來發(fā)送,這里,發(fā)送端運(yùn)行第二進(jìn)程向接收端發(fā)送指令信息。
[0046]步驟101與步驟102可同時運(yùn)行,即第一進(jìn)程與第二進(jìn)程可是并行進(jìn)程。這樣,第二進(jìn)程與第二進(jìn)程之間可進(jìn)行端口復(fù)用,也就是第二進(jìn)程與第二進(jìn)程之間采用了多路復(fù)用1的技術(shù)。從而,可合理使用發(fā)送端的端口,節(jié)省了資源。
[0047]當(dāng)有兩個或多個接收端時,指令信息中可包括有接收端的身份信息,從而,根據(jù)指令信息中攜帶的身份信息,運(yùn)行第二進(jìn)程將指令信息發(fā)送給與身份信息對應(yīng)的接收端。
[0048]可見,本發(fā)明實(shí)施例中,采用兩個進(jìn)程分別發(fā)送心跳信息與指令信息,這樣,發(fā)送心跳信息與發(fā)送指令信息互不干擾,從而,不會因?yàn)榘l(fā)送指令信息而延誤了心跳信息的發(fā)送,減少了接收端因不能準(zhǔn)時接收到心跳信息而導(dǎo)致網(wǎng)絡(luò)連接出錯的幾率,提高了網(wǎng)絡(luò)連接的可靠性。
[0049]實(shí)施例二,本實(shí)施例中,多進(jìn)程運(yùn)行時,當(dāng)運(yùn)行第一進(jìn)程向接收端發(fā)送心跳信息失敗時,通知第二進(jìn)程停止向接收端發(fā)送指令信息。參見圖2,本實(shí)施例中信息傳輸?shù)倪^程包括:
[0050]步驟201:運(yùn)行第一進(jìn)程向接收端發(fā)送心跳信息。
[0051]發(fā)送端運(yùn)行第一進(jìn)程來發(fā)送心跳信息。而當(dāng)有多個接收端時,則發(fā)送端可運(yùn)行第一進(jìn)程向每個接收端輪詢發(fā)送心跳信息。一般,心跳信息是周期性發(fā)送的。
[0052]同樣,發(fā)送端可為服務(wù)器,客戶端或其他的任一網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)備。
[0053]步驟202:運(yùn)行第二進(jìn)程向接收端發(fā)送指令信息。
[0054]本發(fā)明實(shí)施例中,發(fā)送端可以進(jìn)行多進(jìn)程操作,指令信息則可通過另一個進(jìn)行來發(fā)送,這里,發(fā)送端運(yùn)行第二進(jìn)程向接收端發(fā)送指令信息。
[0055]第一進(jìn)程與第二進(jìn)程可以是并行進(jìn)程。這樣,第二進(jìn)程與第二進(jìn)程之間可進(jìn)行端口復(fù)用,也就是第二進(jìn)程與第二進(jìn)程之間采用了多路復(fù)用1的技術(shù)。從而,可合理使用發(fā)送端的端口,節(jié)省了資源。
[0056]步驟203:當(dāng)運(yùn)行第一進(jìn)程向當(dāng)前接收端發(fā)送心跳信息失敗時,通知第二進(jìn)程停止向當(dāng)前接收端發(fā)送指令信息。
[0057]當(dāng)發(fā)送端沒有接收到接收端發(fā)