亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種消息分發(fā)的方法和裝置的制造方法

文檔序號(hào):9910861閱讀:386來(lái)源:國(guó)知局
一種消息分發(fā)的方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)及其軟件技術(shù)領(lǐng)域,特別地涉及一種消息分發(fā)的方法和裝置。
【背景技術(shù)】
[0002]消息系統(tǒng)在計(jì)算機(jī)應(yīng)用系統(tǒng)中應(yīng)用非常廣泛,在隔離系統(tǒng)變化,減少系統(tǒng)耦合,提高處理效率具有不可替代的作用。消息系統(tǒng)主要包括消息生產(chǎn)者、消息消費(fèi)者以及傳遞消息的傳輸系統(tǒng)三部分,其中,消息生產(chǎn)者負(fù)責(zé)生成消息,并通過(guò)傳輸系統(tǒng)發(fā)送給消息消費(fèi)者;消息消費(fèi)者負(fù)責(zé)從傳輸系統(tǒng)讀取消息并進(jìn)行業(yè)務(wù)處理;傳輸系統(tǒng)負(fù)責(zé)從消息生產(chǎn)者讀取消息,并把消息發(fā)送給消息消費(fèi)者。
[0003]評(píng)估傳輸系統(tǒng)的優(yōu)劣通常采用三個(gè)技術(shù)標(biāo)準(zhǔn),S卩:傳輸時(shí)效、傳輸可靠性以及傳輸性能。傳輸時(shí)效是指從消息生產(chǎn)者發(fā)出消息到消息消費(fèi)者收到消息之間的時(shí)間間隔,用于評(píng)價(jià)傳輸系統(tǒng)的及時(shí)性;傳輸可靠性用于評(píng)價(jià)傳輸系統(tǒng)傳遞消息的準(zhǔn)確程度,即消息消費(fèi)者端收到的消息和消息生產(chǎn)者發(fā)出的消息的順序和內(nèi)容是否一致,是否有消息丟失,消息重復(fù)或消息報(bào)文損壞等;傳輸性能是指在指定資源條件下的最大消息吞吐量,用于評(píng)價(jià)傳輸系統(tǒng)的消息傳遞能力。
[0004]傳統(tǒng)IT系統(tǒng)消息規(guī)模較小,而且系統(tǒng)與系統(tǒng)之間通常是在內(nèi)網(wǎng)環(huán)境,網(wǎng)絡(luò)延遲較小,因此設(shè)計(jì)的傳輸系統(tǒng)側(cè)重于高可靠和低延時(shí)的傳輸系統(tǒng)。
[0005]其中,高可靠的消息分發(fā)系統(tǒng)如圖1所示,其主要通過(guò)消息生產(chǎn)端重發(fā),傳輸系統(tǒng)端消息持久化以及消息消費(fèi)端消息重發(fā)三個(gè)控制環(huán)節(jié)保障信息的高可靠性。其消息分發(fā)的尚可靠性具體體現(xiàn)在:
[0006]消息生產(chǎn)端重發(fā):消息生產(chǎn)者發(fā)送消息Msg_N給傳輸系統(tǒng),傳輸系統(tǒng)寫(xiě)入消息日志,返回Ack_P消息給消息生產(chǎn)者,表明消息已經(jīng)可靠投遞到傳輸系統(tǒng)。如果客戶(hù)端在預(yù)定時(shí)間內(nèi)沒(méi)有收到Ack_P消息,則認(rèn)為該消息沒(méi)有發(fā)送成功,消息生產(chǎn)者會(huì)重發(fā)該消息,直到收到發(fā)送成功的Ack_P消息;
[0007]消息持久化:傳輸系統(tǒng)收到消息Msg_N以后,把Msg_N寫(xiě)入日志系統(tǒng),并返回Ack_P消息給消息生產(chǎn)者。然后轉(zhuǎn)發(fā)該消息給消息消費(fèi)者,等收到消息消費(fèi)者的Ack_R消息以后,在日志系統(tǒng)中把Msg_N置為“發(fā)送成功”;
[0008]消息消費(fèi)端重發(fā):當(dāng)傳輸系統(tǒng)發(fā)送Msg_N失敗,或沒(méi)有收到消息消費(fèi)端發(fā)來(lái)的Ack_R消息時(shí),傳輸系統(tǒng)會(huì)重發(fā)Msg_N,直到成功收到消息消費(fèi)端發(fā)來(lái)的
[0009]低延時(shí)的消息分發(fā)系統(tǒng)如圖2所示,其不同于高可靠的消息分發(fā)系統(tǒng),其不是把消息通過(guò)傳輸系統(tǒng)中轉(zhuǎn),而是直接把消息發(fā)送給消息消費(fèi)者,傳輸系統(tǒng)的作用更多是作為一個(gè)注冊(cè)中心,用于記錄消息生產(chǎn)者的服務(wù)地址。低延時(shí)的消息分發(fā)系統(tǒng)的消息處理步驟主要包括:
[0010]消息生產(chǎn)者注冊(cè)消息服務(wù)地址SM_ADDR到傳輸系統(tǒng);
[0011 ]消息消費(fèi)者通過(guò)傳輸系統(tǒng)查詢(xún)消息服務(wù)地址SM_ADDR;
[0012]消息消費(fèi)者根據(jù)SM_ADDR,創(chuàng)建和消息生產(chǎn)者之間的傳輸通道;
[0013]消息生產(chǎn)者通過(guò)傳輸通道發(fā)送Msg_N給消息消費(fèi)者,消息消費(fèi)者反饋Ack消息給消息生廣者;
[0014]如果消息生產(chǎn)者發(fā)送失敗或者等待Ack消息超時(shí),則消息生產(chǎn)者會(huì)快速顯示失敗,提示發(fā)送不成功。
[0015]上述高可靠的消息分發(fā)系統(tǒng)和低延時(shí)的消息分發(fā)系統(tǒng)在進(jìn)行消息分發(fā)時(shí)都存在各自的缺點(diǎn),主要表現(xiàn)在:高可靠的消息分發(fā)系統(tǒng)增加了消息中轉(zhuǎn)和持久化日志環(huán)節(jié),處理環(huán)節(jié)多;而且整體的處理能力受限于傳輸系統(tǒng)的容量,效率較低;而低延時(shí)的消息分發(fā)系統(tǒng)雖然不受限于傳輸系統(tǒng)的容量,但每個(gè)消息都要發(fā)送一次,對(duì)于要發(fā)送大量短消息(例如小于1518byte,一個(gè)以太網(wǎng)幀最大長(zhǎng)度)的場(chǎng)景,增加了不必要的網(wǎng)絡(luò)開(kāi)銷(xiāo)。
[0016]可見(jiàn),現(xiàn)有的消息分發(fā)系統(tǒng)在處理性能和消息吞吐量上都存在一定缺陷,而隨著互聯(lián)網(wǎng)應(yīng)用中消息規(guī)模的迅猛增長(zhǎng),系統(tǒng)所依賴(lài)的組網(wǎng)技術(shù)越來(lái)越復(fù)雜,網(wǎng)絡(luò)質(zhì)量難以預(yù)測(cè),信息異構(gòu)日趨多元,對(duì)信息的可靠性要求有所降低。為了滿(mǎn)足這類(lèi)場(chǎng)景的應(yīng)用,本發(fā)明提出一種消息分發(fā)系統(tǒng),其能實(shí)現(xiàn)海量信息的高效傳輸,既不受限于傳輸系統(tǒng)的容量,又可避免不必要的網(wǎng)絡(luò)開(kāi)銷(xiāo)。

【發(fā)明內(nèi)容】

[0017]有鑒于此,本發(fā)明提供一種消息分發(fā)的方法和裝置,能夠優(yōu)先保障傳輸性能,在有限的網(wǎng)絡(luò)帶寬約束下適當(dāng)權(quán)衡可靠性和時(shí)效性,保障最大信息吞吐量,提供海量信息下最大限度的傳輸效率,滿(mǎn)足高負(fù)荷場(chǎng)景下的消息分發(fā)需求。
[0018]為實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的一個(gè)方面,提供了一種消息分發(fā)的方法。
[0019]—種消息分發(fā)的方法,包括:消息生產(chǎn)者與消息消費(fèi)者根據(jù)消息分發(fā)服務(wù)地址建立消息傳輸通道;所述消息生產(chǎn)者將生產(chǎn)的消息按照預(yù)定的時(shí)間間隔進(jìn)行分組,并按照各消息組的創(chuàng)建順序?qū)⑺鱿⒔M通過(guò)所述消息傳輸通道發(fā)送給所述消息消費(fèi)者;所述消息消費(fèi)者接收所述消息組并讀取所述消息組中的消息,并按照消息生產(chǎn)的先后順序依次消費(fèi)所述讀取的消息。
[0020]可選地,消息生產(chǎn)者與消息消費(fèi)者根據(jù)消息分發(fā)服務(wù)地址建立消息傳輸通道的步驟,包括:所述消息生產(chǎn)者將所述分發(fā)服務(wù)地址發(fā)送到消息傳輸模塊;所述消息消費(fèi)者從所述消息傳輸模塊查找到所述分發(fā)服務(wù)地址,并根據(jù)所述分發(fā)服務(wù)地址與所述消息生產(chǎn)者建立消息傳輸通道。
[0021]可選地,所述消息生產(chǎn)者將生產(chǎn)的消息按照預(yù)定的時(shí)間間隔進(jìn)行分組的步驟包括:根據(jù)消息生產(chǎn)的當(dāng)前時(shí)間和所述預(yù)定的時(shí)間間隔計(jì)算時(shí)間標(biāo)識(shí);根據(jù)所述預(yù)定的時(shí)間間隔內(nèi)消息生產(chǎn)的先后順序?qū)λ鱿⑦M(jìn)行排序,并給出對(duì)應(yīng)的序列號(hào);對(duì)所述生產(chǎn)的消息創(chuàng)建新的消息對(duì)象,所述新的消息對(duì)象包括所述時(shí)間標(biāo)識(shí)、所述序列號(hào)和所述消息的內(nèi)容;對(duì)所述新的消息對(duì)象按照預(yù)定的時(shí)間間隔進(jìn)行分組。
[0022]可選地,將所述消息組通過(guò)所述消息傳輸通道發(fā)送給所述消息消費(fèi)者的步驟包括:對(duì)所述消息組進(jìn)行壓縮,并創(chuàng)建壓縮消息對(duì)象;將所述壓縮消息對(duì)象通過(guò)所述消息傳輸通道發(fā)送給所述消息消費(fèi)者;以及,消息消費(fèi)者接收所述消息組的步驟包括:消息消費(fèi)者對(duì)接收的所述消息壓縮對(duì)象進(jìn)行解壓縮,得到所述消息組。
[0023]可選地,按照消息生產(chǎn)的先后順序依次消費(fèi)所述讀取的消息的步驟之前,還包括:所述消息消費(fèi)者對(duì)所述讀取的消息進(jìn)行格式校驗(yàn),并刪除其中不完整的消息。
[0024]根據(jù)本發(fā)明的另一方面,提供了一種消息分發(fā)的裝置。
[0025]—種消息分發(fā)的裝置,包括:消息傳輸模塊,用于消息生產(chǎn)者與消息消費(fèi)者根據(jù)消息分發(fā)服務(wù)地址建立消息傳輸通道;消息發(fā)送模塊,用于所述消息生產(chǎn)者將生產(chǎn)的消息按照預(yù)定的時(shí)間間隔進(jìn)行分組,并按照各消息組的創(chuàng)建順序?qū)⑺鱿⒔M通過(guò)所述消息傳輸通道發(fā)送給所述消息消費(fèi)者;消息接收模塊,用于所述消息消費(fèi)者接收所述消息組并讀取所述消息組中的消息,并按照消息生產(chǎn)的先后順序依次消費(fèi)所述讀取的消息。
[0026]可選地,所述消息傳輸模塊還用于:接收所述消息生產(chǎn)者發(fā)送來(lái)的所述分發(fā)服務(wù)地址;以及所述消息消費(fèi)者從所述消息傳輸模塊查找所述分發(fā)服務(wù)地址,并根據(jù)所述分發(fā)服務(wù)地址與所述消息生產(chǎn)者建立消息傳輸通道。
[0027]可選地,所述消息發(fā)送模塊還用于:根據(jù)消息生產(chǎn)的當(dāng)前時(shí)間和所述預(yù)定的時(shí)間間隔計(jì)算時(shí)間標(biāo)識(shí);根據(jù)所述預(yù)定的時(shí)間間隔內(nèi)消息生產(chǎn)的先后順序?qū)λ鱿⑦M(jìn)行排序,并給出對(duì)應(yīng)的序列號(hào);對(duì)所述生產(chǎn)的消息創(chuàng)建新的消息對(duì)象,所述新的消息對(duì)象包括所述時(shí)間標(biāo)識(shí)、所述序列號(hào)和所述消息的內(nèi)容;對(duì)所述新的消息對(duì)象按照預(yù)定的時(shí)間間隔進(jìn)行分組。
[0028]可選地,所述消息發(fā)送模塊還用于:對(duì)所述消息組進(jìn)行壓縮,并創(chuàng)建壓縮消息對(duì)象;將所述壓縮消息對(duì)象通過(guò)所述消息傳輸通道發(fā)送給所述消息消費(fèi)者;以及,所述消息接收模塊還用于:對(duì)接收的所述消息壓縮對(duì)象進(jìn)行解壓縮,得到所述消息組。
[0029]可選地,所述消息接收模塊還用于:對(duì)所述讀取的消息進(jìn)行格式校驗(yàn),并刪除其中不完整的消息。
[0030]根據(jù)本發(fā)明的技術(shù)方案,消息生產(chǎn)者與消息消費(fèi)者根據(jù)消息分發(fā)服務(wù)地址建立消息傳輸通道,消息生產(chǎn)者端將生產(chǎn)的消息進(jìn)行分組、壓縮,并按照各消息組的創(chuàng)建順序通過(guò)消息傳輸通道將消息發(fā)送給消息消費(fèi)者端,消息消費(fèi)者端接收消息組,并進(jìn)行消息組解壓縮、消息組拆分以及消息重新排序等步驟,將消息組中的消息恢復(fù)為消息發(fā)送前的邏輯順序,另外,還可對(duì)消息進(jìn)行格式校驗(yàn),丟棄不完整的消息,將有序且完整的消息供消息消費(fèi)者消費(fèi)。根據(jù)本發(fā)明的技術(shù)方案,功能分層的消息傳輸體系結(jié)構(gòu)保證消息傳輸中各層的邏輯清晰且功能單一,從而維護(hù)方便容易,層間松耦合,可獨(dú)立優(yōu)化,并且本發(fā)明能夠優(yōu)先保障傳輸性能,在有限的網(wǎng)絡(luò)帶寬約束下適當(dāng)權(quán)衡可靠性和時(shí)效性,保障最大信息吞吐量,提供海量信息下最大限度的傳輸效率,滿(mǎn)足高負(fù)荷場(chǎng)景下的消息分發(fā)需求以及消息吞吐量需求。
【附圖說(shuō)明】
[0031]附圖用于更好地理解本發(fā)明,不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。其中:
[0032]圖1是現(xiàn)有技術(shù)的高可靠的消息分發(fā)系統(tǒng)的構(gòu)架示意圖;
當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1