專利名稱:云模式下的消息傳輸方法及消息總線系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及中間件技術(shù)領(lǐng)域,特別涉及一種云模式下的消息傳輸方法及消息總線 系統(tǒng)。
背景技術(shù):
隨著計(jì)算機(jī)技術(shù)的發(fā)展,越來越復(fù)雜的IT環(huán)境以及高昂的開發(fā)維護(hù)成本使得無 法應(yīng)用創(chuàng)新成果,并且難以提高整合靈活性。為了提高信息交換的有效性以及應(yīng)用程序自 身的可靠性,逐漸出現(xiàn)了專門負(fù)責(zé)消息通信的軟件。使得無需在應(yīng)用中添加復(fù)雜的編程程 序便可驗(yàn)證或確保信息交換的可靠連接。它通常是一個(gè)獨(dú)立運(yùn)行的通信環(huán)境,有統(tǒng)一的編 程調(diào)用接口,可以跨平臺(tái)、跨協(xié)議。不同結(jié)點(diǎn)之間的軟件可以通過配置相互連通,搭起統(tǒng)一 的通信平臺(tái),從而產(chǎn)生更強(qiáng)大的功能。這種通信軟件往往安全可靠、配置靈活,其地位在操 作系統(tǒng)之上,在應(yīng)用程序之下,所以被稱為消息中間件。在采用中間件的方式下,信息的發(fā)送端和接收端由于有了中間件,二者不必要時(shí) 刻處于連接狀態(tài),作為中間環(huán)節(jié),中間件的加入使得信息有了暫時(shí)存放的地點(diǎn)即隊(duì)列,系統(tǒng) 間的通信變得更加方便。當(dāng)發(fā)生通信故障時(shí),信息會(huì)暫時(shí)存放,待故障排除后,信息將由中 間件傳輸?shù)浇邮斩?,因此既避免了信息的重?fù)發(fā)送,也避免了信息丟失。消息中間件的產(chǎn)生,使得傳統(tǒng)的消息傳遞過程發(fā)生了改變。其中,面向消息傳遞的 中間件(MOM, Message Oriented Middleware)中的Websphere MQ是用來連接異構(gòu)平臺(tái)之 間企業(yè)應(yīng)用的專業(yè)產(chǎn)品。通過Websphere MQ可以屏蔽不同的通信協(xié)議之間的差別,可以最 大限度地簡化網(wǎng)絡(luò)編程的復(fù)雜性。通過MQ的配置,通信雙方的程序可以以松耦合的方式獨(dú) 自運(yùn)行,并不關(guān)心對(duì)方所在的位置和狀態(tài),通過消息驅(qū)動(dòng)或消息觸發(fā)的方式來相互聯(lián)系。它 支持多種平臺(tái),對(duì)消息支持交易式的提交和回滾。Websphere MQ其核心的工作原理就是存儲(chǔ)轉(zhuǎn)發(fā)。在單個(gè)隊(duì)列管理器的環(huán)境中,隊(duì) 列可以用于存儲(chǔ)應(yīng)用間傳遞的消息,從而使應(yīng)用程序在各自環(huán)節(jié)上進(jìn)行處理,并通過隊(duì)列 形成環(huán)環(huán)相扣的處理流程。在多個(gè)隊(duì)列管理器的環(huán)境中,消息可以跨平臺(tái)進(jìn)行流動(dòng),從而使 整個(gè)處理流程在分布式計(jì)算環(huán)境中完成。此外,企業(yè)服務(wù)總線(ESB,Enterprise Service Bus)是傳統(tǒng)中間件技術(shù)與XML、 Web服務(wù)等技術(shù)結(jié)合的產(chǎn)物。ESB提供了網(wǎng)絡(luò)中最基本的連接中樞,是構(gòu)筑企業(yè)神經(jīng)系統(tǒng)的 必要元素,是從面向服務(wù)架構(gòu)發(fā)展而來的。ESB是一個(gè)松散耦合的、分布式的、事件驅(qū)動(dòng)的企業(yè)級(jí)面向服務(wù)架構(gòu)(S0A, ServiceOriented Architecture),一個(gè)ESB是預(yù)先組裝的SOA實(shí)現(xiàn),包含SOA分層目標(biāo)所 必須的基礎(chǔ)功能部件。ESB的基本原理是通過標(biāo)準(zhǔn)的整合技術(shù),將SOA、Web Services和 XML等技術(shù)融合到統(tǒng)一的分布式架構(gòu)中,搭建易于部署、可管理的整合基礎(chǔ)設(shè)施。它既可集 成新的應(yīng)用服務(wù),也可通過分解、包裝遺留系統(tǒng),使其提供服務(wù)接口,從而集成已有的應(yīng)用。但是在實(shí)現(xiàn)本發(fā)明的過程中。發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)的缺陷在于無論是MQ還是 ESB,消息傳輸都需要由消息的發(fā)送者發(fā)送消息給接收者,發(fā)送過程需要知道發(fā)送對(duì)象的地址,處理方法利用中間件技術(shù),將消息包裝后進(jìn)入隊(duì)列,經(jīng)通道進(jìn)入消息路由,根據(jù)IP地址 等解析到消息的接收者。因此,消息傳輸?shù)奶幚頇C(jī)制不夠靈活,不能進(jìn)一步提高傳輸效率和 網(wǎng)絡(luò)利用率。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供一種云模式下的消息傳輸方法及消息總線系統(tǒng),目的在于通過 云模式的思想實(shí)現(xiàn)不同的消息處理機(jī)制,提供高效、安全、可靠的消息傳輸。為達(dá)到上述目的,本發(fā)明提供一種消息傳輸方法,應(yīng)用于云模式下,所述方法包 括消息請(qǐng)求端產(chǎn)生消息需求,并向消息總線端發(fā)送包含消息規(guī)則的請(qǐng)求;消息總線端接收消息請(qǐng)求端發(fā)送的請(qǐng)求,根據(jù)消息規(guī)則查找消息提供端,向消息 提供端發(fā)送請(qǐng)求;消息提供端接收消息總線端發(fā)送的請(qǐng)求,向消息總線端發(fā)送消息;消息總線端接收消息提供端發(fā)送的消息,將消息發(fā)送至消息請(qǐng)求端。本發(fā)明實(shí)施例還提供一種消息總線系統(tǒng),應(yīng)用于云模式下,所述系統(tǒng)包括消息請(qǐng)求端,產(chǎn)生消息需求,并向消息總線端發(fā)送包含消息規(guī)則的請(qǐng)求;以及從消 息總線端獲取消息;消息總線端,接收消息請(qǐng)求端發(fā)送的消息請(qǐng)求,根據(jù)消息規(guī)則查找消息提供端,向 消息提供端發(fā)送請(qǐng)求;以及接收消息提供端發(fā)送的消息,并向消息請(qǐng)求端發(fā)送消息;消息提供端,接收消息總線端發(fā)送的請(qǐng)求,并向消息總線端發(fā)送消息。本發(fā)明實(shí)施例的有益效果在于,通過利用消息規(guī)則和消息總線傳輸消息,可提供 高效、安全、可靠的消息傳輸;既保持了原有系統(tǒng)的獨(dú)立運(yùn)行,又很好地實(shí)現(xiàn)了各系統(tǒng)之間 相關(guān)數(shù)據(jù)的互連互通、一致性和有效性。
此處所說明的附圖用來提供對(duì)本發(fā)明的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,并不 構(gòu)成對(duì)本發(fā)明的限定。在附圖中圖1是本發(fā)明實(shí)施例的消息傳輸方法的流程圖;圖2是本發(fā)明實(shí)施例的消息傳輸?shù)臅r(shí)序示例圖;圖3是本發(fā)明實(shí)施例的對(duì)消息規(guī)則進(jìn)行分解的實(shí)例示意圖;圖4是本發(fā)明實(shí)施例的消息總線端進(jìn)行負(fù)載均衡的實(shí)例示意圖;圖5是本發(fā)明實(shí)施例的消息總線系統(tǒng)的構(gòu)成示意圖。
具體實(shí)施例方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,下面結(jié)合附圖對(duì)本發(fā)明實(shí)施 例作進(jìn)一步詳細(xì)說明。在此,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,但并不作為 對(duì)本發(fā)明的限定。本發(fā)明實(shí)施例提供一種消息傳輸方法,應(yīng)用于云模式下,如圖1所示,所述方法包 括
5
步驟101,消息請(qǐng)求端產(chǎn)生消息需求,并向消息總線端發(fā)送包含消息規(guī)則的請(qǐng)求;步驟102,消息總線端接收消息請(qǐng)求端發(fā)送的請(qǐng)求,根據(jù)消息規(guī)則查找消息提供 端,向消息提供端發(fā)送請(qǐng)求;步驟103,消息提供端接收消息總線端發(fā)送的請(qǐng)求,向消息總線端發(fā)送消息;步驟104,消息總線端接收消息提供端發(fā)送的消息,將消息發(fā)送至消息請(qǐng)求端。在本實(shí)施例中,消息請(qǐng)求端產(chǎn)生消息需求之前,消息提供端產(chǎn)生消息并生成對(duì)應(yīng) 的消息規(guī)則,并將消息規(guī)則發(fā)送至消息總線端;消息總線端接收并存儲(chǔ)消息提供端發(fā)送的 消息規(guī)則,用于匹配消息請(qǐng)求端發(fā)送的請(qǐng)求。在本實(shí)施例中,消息規(guī)則可為消息的類型、或者消息的關(guān)鍵字、或者消息的查詢條 件等。例如,消息規(guī)則為(A-D),表示請(qǐng)求排除D服務(wù)后的A服務(wù)的結(jié)果;若A服務(wù)為請(qǐng)求 2010年國慶假期7天的天氣情況,D服務(wù)為請(qǐng)求2010年10月1日的天氣情況,則該消息規(guī) 則為請(qǐng)求2010年10月2日至10月6日的天氣情況。以上僅為示意性說明,但不限于此, 消息規(guī)則還可為其他的對(duì)應(yīng)信息。在步驟102實(shí)施時(shí),消息總線端接收到消息請(qǐng)求端發(fā)送的請(qǐng)求之后,優(yōu)選地,消息 總線端還可對(duì)該請(qǐng)求進(jìn)行驗(yàn)證,若驗(yàn)證通過,則根據(jù)消息規(guī)則查找消息提供端。具體地,消息總線端可對(duì)請(qǐng)求進(jìn)行安全驗(yàn)證,例如,可進(jìn)行安全掃描,判斷是否為 惡意請(qǐng)求,若為惡意請(qǐng)求,則可忽略該請(qǐng)求。由此,消息總線端可以進(jìn)行安全過濾,進(jìn)一步降 低消息傳輸過程中的安全風(fēng)險(xiǎn)。或者,消息總線端還可對(duì)請(qǐng)求進(jìn)行邏輯上的驗(yàn)證,可先判斷消息規(guī)則在邏輯上是 否合理。例如,若消息規(guī)則為(D-A),A服務(wù)為請(qǐng)求2010年國慶假期7天的天氣情況,D服 務(wù)為請(qǐng)求2010年10月1日的天氣情況;則該消息規(guī)則明顯不符合邏輯,可忽略該請(qǐng)求。由 此,消息總線端可以預(yù)先對(duì)消息請(qǐng)求進(jìn)行篩選,避免對(duì)無效的請(qǐng)求進(jìn)行匹配,進(jìn)一步提高消 息傳輸?shù)男?,減輕網(wǎng)絡(luò)傳輸?shù)膲毫?。以下結(jié)合圖2對(duì)上述消息傳輸方法進(jìn)行進(jìn)一步說明。圖2為本發(fā)明實(shí)施例的消息 傳輸?shù)臅r(shí)序示例圖。由圖2可知,上述流程具體包括在準(zhǔn)備階段步驟201,消息提供端產(chǎn)生消息,并生成對(duì)應(yīng)的消息規(guī)則。步驟202,消息提供端將消息規(guī)則發(fā)送至消息總線端。步驟203,消息總線端接收并存儲(chǔ)消息提供端發(fā)送的消息規(guī)則,用于匹配消息請(qǐng)求 端發(fā)送的請(qǐng)求。在消息傳輸階段步驟204,消息請(qǐng)求端產(chǎn)生消息需求。步驟205,消息請(qǐng)求端向消息總線端發(fā)送包含消息規(guī)則的請(qǐng)求。步驟206,消息總線端接收消息請(qǐng)求端發(fā)送的請(qǐng)求后,根據(jù)消息規(guī)則查找到消息提供端。在本實(shí)施例中,消息總線端可根據(jù)消息規(guī)則進(jìn)行檢索,查找匹配的消息提供端,得 到匹配的消息提供端的地址。步驟207,消息總線端向消息提供端發(fā)送請(qǐng)求。步驟208,消息提供端接收消息總線端發(fā)送的請(qǐng)求后,向消息總線端發(fā)送消息。
在本實(shí)施例中,消息提供端可將消息打包,并傳輸至隊(duì)列中,然后經(jīng)消息通道將打 包后的消息傳送至消息總線端。步驟209,消息總線端接收消息提供端發(fā)送的消息后,將消息發(fā)送至消息請(qǐng)求端; 由此完成一次消息的傳輸。因此,本發(fā)明消息的發(fā)送端和接收端兩者建立聯(lián)系僅需知道所需消息的消息規(guī) 則;消息提供端將所提供的消息發(fā)送到總線后,不知道消息將會(huì)發(fā)送至何處,而消息請(qǐng)求端 也只在需要消息時(shí)從總線接收消息,不知道消息提供端的地址。兩者無需知道對(duì)方地址即 可完成傳輸,并且消息的傳輸是按需要進(jìn)行,消息的傳輸更有效率,網(wǎng)絡(luò)的利用率更高。在步驟102實(shí)施時(shí),在消息總線端接收到消息請(qǐng)求端發(fā)送的請(qǐng)求之后,優(yōu)選地,消 息總線端還可對(duì)消息規(guī)則進(jìn)行分解,根據(jù)分解的結(jié)果查找多個(gè)消息提供端,并向多個(gè)消息 提供端分別發(fā)送請(qǐng)求;并且,消息總線端還可接收多個(gè)消息提供端發(fā)送的消息,并將多個(gè)消息合成后向 消息請(qǐng)求端發(fā)送。圖3為本發(fā)明實(shí)施例中對(duì)消息規(guī)則進(jìn)行分解的實(shí)例示意圖。如圖3所示,消息請(qǐng) 求端2向消息總線端發(fā)送包含消息規(guī)則(A+B)*C服務(wù)的請(qǐng)求;消息總線端接收到該請(qǐng)求后, 服務(wù)分解/合成模塊將該消息規(guī)則分解為N = A+B服務(wù)和K = N*C服務(wù);然后,通過服務(wù)分發(fā)模塊在池(Pool)中查找到消息提供端的地址后,向消息提供 端A發(fā)送A服務(wù)請(qǐng)求,向消息提供端B發(fā)送B服務(wù)請(qǐng)求,向消息提供端C發(fā)送C服務(wù)請(qǐng)求。 在接收到消息提供端A、B、C返回的消息后,服務(wù)分解/合成模塊將服務(wù)A、B的結(jié)果合成, 形成服務(wù)N = A+B的結(jié)果;然后將服務(wù)N、C的結(jié)果合成,形成服務(wù)K = N*C的結(jié)果。最后將 該結(jié)果返回消息請(qǐng)求端2,完成消息傳輸。由此,消息總線端通過任務(wù)分發(fā)模塊和服務(wù)分解/合成模塊,可根據(jù)注冊(cè)模塊提 供的服務(wù)體分發(fā)任務(wù),可以提供更加靈活的服務(wù),進(jìn)一步提高消息傳輸?shù)男?。在本?shí)施例中,消息總線端可接受大量的消息請(qǐng)求端的請(qǐng)求、以及消息提供端提 供的消息服務(wù)。優(yōu)選地,消息總線端還可根據(jù)負(fù)載情況進(jìn)行負(fù)載均衡。圖4為消息總線端進(jìn)行負(fù)載均衡的實(shí)例示意圖。如圖4所示,可在消息總線端設(shè) 置虛擬服務(wù)器和多個(gè)Server端??蛻舳丝上蛱摂M服務(wù)器發(fā)送請(qǐng)求,由虛擬服務(wù)器內(nèi)部的負(fù) 載均衡系統(tǒng)將所發(fā)送的請(qǐng)求分發(fā)到各個(gè)服務(wù)器。例如,消息請(qǐng)求端Clientl發(fā)送Ii1個(gè)A請(qǐng)求到服務(wù)器,Client N端發(fā)送n2個(gè)A請(qǐng) 求到服務(wù)器;虛擬服務(wù)器的負(fù)載均衡系統(tǒng)可將這些請(qǐng)求發(fā)送至各個(gè)Server端,各個(gè)Server 端收到的消息可以是相同的A ;Server端處理請(qǐng)求后,返回Client端處理的結(jié)果。以上僅 為示意性說明,但不限于此,可根據(jù)實(shí)際情況確定具體的實(shí)施方式。由此,負(fù)載均衡系統(tǒng)將請(qǐng)求根據(jù)服務(wù)端的負(fù)載情況均衡地將請(qǐng)求轉(zhuǎn)移到不同的服 務(wù)器上執(zhí)行,且自動(dòng)屏蔽掉服務(wù)器的故障,從而將一組服務(wù)器構(gòu)成一個(gè)高性能的、高可用的 虛擬服務(wù)器,進(jìn)一步提高消息傳輸?shù)陌踩院涂煽啃?。由上述?shí)施例可知,通過利用消息規(guī)則和消息總線傳輸消息,可提供高效、安全、 可靠的消息傳輸;既保持了原有系統(tǒng)的獨(dú)立運(yùn)行,又很好地實(shí)現(xiàn)了各系統(tǒng)之間相關(guān)數(shù)據(jù)的 互連互通、一致性和有效性。與ESB消息處理機(jī)制相比ESB消息處理過程消息的傳輸是被動(dòng)的,發(fā)送端需要知
7道接收端的地址,進(jìn)而通過總線完成消息的傳遞。而本發(fā)明實(shí)施例提供的消息傳輸方法無 需雙方知道對(duì)方地址即可完成傳輸,并且消息的傳輸是按需要進(jìn)行。與P2P網(wǎng)絡(luò)之上Pub/Sub技術(shù)相比Pub/Sub技術(shù)的消息發(fā)布者和訂閱者是相對(duì) 固定的,所完成的是信息的交換;P2P的點(diǎn)對(duì)點(diǎn)技術(shù)是一種對(duì)等的網(wǎng)絡(luò)交換技術(shù),是多點(diǎn)協(xié) 同傳輸。而本發(fā)明實(shí)施例提供的消息傳輸方法是一種消息服務(wù)傳遞,并且在消息處理過程 中,能夠設(shè)置消息處理服務(wù)器,將單個(gè)消息整合,混合的消息分解,最終將消息發(fā)送給該類 型消息的請(qǐng)求端。因此,本發(fā)明實(shí)施例與上述技術(shù)在原理上有本質(zhì)的不同。本發(fā)明實(shí)施例還提供一種消息總線系統(tǒng),應(yīng)用于云模式下,如圖5所示,所述系統(tǒng) 包括消息請(qǐng)求端501、消息總線端502和消息提供端503 ;其中,消息請(qǐng)求端501產(chǎn)生消息需求,并向消息總線端502發(fā)送包含消息規(guī)則的請(qǐng)求;以 及從消息總線端502獲取消息;消息總線端502接收消息請(qǐng)求端501發(fā)送的消息請(qǐng)求,根據(jù)消息規(guī)則查找消息提 供端503,向消息提供端503發(fā)送請(qǐng)求;以及接收消息提供端503發(fā)送的消息,并向消息請(qǐng) 求端501發(fā)送消息;消息提供端503接收消息總線端502發(fā)送的請(qǐng)求,并向消息總線端502發(fā)送消息。在本實(shí)施例中,消息提供端503還產(chǎn)生消息并生成消息規(guī)則;以及將該消息規(guī)則 發(fā)送至消息總線端502 ;消息總線端502還接收并存儲(chǔ)消息提供端501發(fā)送的消息規(guī)則,用 于匹配消息請(qǐng)求端501發(fā)送的請(qǐng)求。優(yōu)選地,消息總線端502接收到消息請(qǐng)求端501發(fā)送的請(qǐng)求之后,還可對(duì)請(qǐng)求進(jìn)行 驗(yàn)證,若驗(yàn)證通過,則根據(jù)消息規(guī)則查找消息提供端503。優(yōu)選地,消息總線端502接收到消息請(qǐng)求端501發(fā)送的請(qǐng)求之后,還可對(duì)消息規(guī)則 進(jìn)行分解,并根據(jù)分解的結(jié)果查找多個(gè)消息提供端503,向多個(gè)消息提供端503分別發(fā)送請(qǐng) 求;以及消息總線端502接收多個(gè)消息提供端503發(fā)送的消息,并將多個(gè)消息合成后 向消息請(qǐng)求端501發(fā)送。優(yōu)選地,消息總線端502還可根據(jù)負(fù)載情況進(jìn)行負(fù)載均衡。本實(shí)施例的裝置的各組成部分分別用于實(shí)現(xiàn)前述實(shí)施例的方法的各步驟,由于在 方法實(shí)施例中,已經(jīng)對(duì)各步驟進(jìn)行了詳細(xì)說明,在此不再贅述。由上述實(shí)施例可知,通過利用消息規(guī)則和消息總線傳輸消息,可提供高效、安全、 可靠的消息傳輸;既保持了原有系統(tǒng)的獨(dú)立運(yùn)行,又很好地實(shí)現(xiàn)了各系統(tǒng)之間相關(guān)數(shù)據(jù)的 互連互通、一致性和有效性。本領(lǐng)域普通技術(shù)人員還可以進(jìn)一步意識(shí)到,結(jié)合本文中所公開的實(shí)施例描述的各 示例的單元及算法步驟,能夠以電子硬件、計(jì)算機(jī)軟件或者二者的結(jié)合來實(shí)現(xiàn),為了清楚地 說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各示例的組成及 步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束 條件。專業(yè)技術(shù)人員可以對(duì)每個(gè)特定的應(yīng)用來使用不同方法來實(shí)現(xiàn)所描述的功能,但是這 種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。結(jié)合本文中所公開的實(shí)施例描述的方法或算法的步驟可以用硬件、處理器執(zhí)行的 軟件模塊,或者二者的結(jié)合來實(shí)施。軟件模塊可以置于隨機(jī)存儲(chǔ)器(RAM)、內(nèi)存、只讀存儲(chǔ)器
8(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤、可移動(dòng)磁盤、CD-ROM、或技術(shù)領(lǐng)域 內(nèi)所公知的任意其它形式的存儲(chǔ)介質(zhì)中。 以上所述的具體實(shí)施方式
,對(duì)本發(fā)明的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步 詳細(xì)說明,所應(yīng)理解的是,以上所述僅為本發(fā)明的具體實(shí)施方式
而已,并不用于限定本發(fā)明 的保護(hù)范圍,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含 在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
一種消息傳輸方法,應(yīng)用于云模式下,其特征在于,所述方法包括消息請(qǐng)求端產(chǎn)生消息需求,并向消息總線端發(fā)送包含消息規(guī)則的請(qǐng)求;消息總線端接收所述消息請(qǐng)求端發(fā)送的請(qǐng)求,根據(jù)所述消息規(guī)則查找消息提供端,向所述消息提供端發(fā)送請(qǐng)求;消息提供端接收所述消息總線端發(fā)送的請(qǐng)求,向所述消息總線端發(fā)送所述消息;所述消息總線端接收所述消息提供端發(fā)送的消息,將所述消息發(fā)送至所述消息請(qǐng)求端。
2.根據(jù)權(quán)利要求1所述的消息傳輸方法,其特征在于,在消息請(qǐng)求端產(chǎn)生消息需求之 前,所述方法還包括所述消息提供端產(chǎn)生所述消息并生成對(duì)應(yīng)的消息規(guī)則;以及將所述消息規(guī)則發(fā)送至所 述消息總線端;所述消息總線端接收并存儲(chǔ)所述消息提供端發(fā)送的消息規(guī)則,用于匹配所述消息請(qǐng)求 端發(fā)送的請(qǐng)求。
3.根據(jù)權(quán)利要求1或2所述的消息傳輸方法,其特征在于,在所述消息總線端接收到所 述消息請(qǐng)求端發(fā)送的請(qǐng)求之后,所述方法還包括所述消息總線端對(duì)請(qǐng)求進(jìn)行驗(yàn)證,若驗(yàn)證通過,則根據(jù)所述消息規(guī)則查找消息提供端。
4.根據(jù)權(quán)利要求1或2所述的消息傳輸方法,其特征在于,在所述消息總線端接收到所 述消息請(qǐng)求端發(fā)送的請(qǐng)求之后,所述方法還包括所述消息總線端對(duì)所述消息規(guī)則進(jìn)行分解,根據(jù)分解的結(jié)果查找多個(gè)消息提供端,并 向所述多個(gè)消息提供端分別發(fā)送請(qǐng)求;并且,接收所述多個(gè)消息提供端發(fā)送的消息,將多個(gè)消息合成后向所述消息請(qǐng)求端發(fā)送。
5.根據(jù)權(quán)利要求4所述的消息傳輸方法,其特征在于,所述方法還包括所述消息總線 端根據(jù)負(fù)載情況進(jìn)行負(fù)載均衡。
6.一種消息總線系統(tǒng),應(yīng)用于云模式下,其特征在于,所述系統(tǒng)包括消息請(qǐng)求端,產(chǎn)生消息需求,并向消息總線端發(fā)送包含消息規(guī)則的請(qǐng)求;以及從所述消 息總線端獲取消息;消息總線端,接收所述消息請(qǐng)求端發(fā)送的請(qǐng)求,根據(jù)所述消息規(guī)則查找消息提供端,向 所述消息提供端發(fā)送請(qǐng)求;以及接收所述消息提供端發(fā)送的消息,并向所述消息請(qǐng)求端發(fā) 送所述消息;消息提供端,接收所述消息總線端發(fā)送的請(qǐng)求,并向所述消息總線端發(fā)送所述消息。
7.根據(jù)權(quán)利要求6所述的消息總線系統(tǒng),其特征在于,所述消息提供端產(chǎn)生消息并生 成消息規(guī)則;以及將所述消息規(guī)則發(fā)送至所述消息總線端;所述消息總線端接收并存儲(chǔ)所述消息提供端發(fā)送的消息規(guī)則,用于匹配所述消息請(qǐng)求 端發(fā)送的請(qǐng)求。
8.根據(jù)權(quán)利要求6或7所述的消息總線系統(tǒng),其特征在于,所述消息總線端在接收到所 述消息請(qǐng)求端發(fā)送的請(qǐng)求之后,還對(duì)所述請(qǐng)求進(jìn)行驗(yàn)證,若驗(yàn)證通過,則根據(jù)所述消息規(guī)則 查找消息提供端。
9.根據(jù)權(quán)利要求6或7所述的消息總線系統(tǒng),其特征在于,所述消息總線端在接收到所述消息請(qǐng)求端發(fā)送的請(qǐng)求之后,還對(duì)所述消息規(guī)則進(jìn)行分解,并根據(jù)分解的結(jié)果查找多個(gè) 消息提供端,向所述多個(gè)消息提供端分別發(fā)送請(qǐng)求;以及接收所述多個(gè)消息提供端發(fā)送的消息,并將多個(gè)消息合成后向所述消息請(qǐng)求端發(fā)送。
10.根據(jù)權(quán)利要求9所述的消息總線系統(tǒng),其特征在于,所述消息總線端還根據(jù)負(fù)載情 況進(jìn)行負(fù)載均衡。
全文摘要
本發(fā)明實(shí)施例提供一種云模式下的消息傳輸方法及消息總線系統(tǒng),該方法包括消息請(qǐng)求端產(chǎn)生消息需求,并向消息總線端發(fā)送包含消息規(guī)則的請(qǐng)求;消息總線端接收消息請(qǐng)求端發(fā)送的請(qǐng)求,根據(jù)消息規(guī)則查找消息提供端,向消息提供端發(fā)送請(qǐng)求;消息提供端接收消息總線端發(fā)送的請(qǐng)求,向消息總線端發(fā)送消息;消息總線端接收消息提供端發(fā)送的消息,將消息發(fā)送至消息請(qǐng)求端。通過本發(fā)明實(shí)施例,可以提供高效、安全、可靠的消息傳輸;既保持了原有系統(tǒng)的獨(dú)立運(yùn)行,又很好地實(shí)現(xiàn)了各系統(tǒng)之間相關(guān)數(shù)據(jù)的互連互通、一致性和有效性。
文檔編號(hào)H04L12/58GK101977165SQ20101053663
公開日2011年2月16日 申請(qǐng)日期2010年11月8日 優(yōu)先權(quán)日2010年11月8日
發(fā)明者楊鴻達(dá), 董孝峰, 陳鵬 申請(qǐng)人:北京中科院軟件中心有限公司