專利名稱:一種應(yīng)用于電視臺全臺網(wǎng)主干平臺的消息接入系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及廣電領(lǐng)域電視節(jié)目制播技術(shù),具體涉及一種應(yīng)用于電視臺全 臺網(wǎng)主干平臺的消息接入系統(tǒng)。
背景技術(shù):
當前國內(nèi)外廣電行業(yè)在信息化方面的總體發(fā)展方向是信息共享化、業(yè) 務(wù)流程化和管理集成化。要實現(xiàn)這三個方面首先就必須要求電視臺的各個業(yè) 務(wù)板塊之間可以良好的通信,進行消息的傳遞和交換。在基于SOA架構(gòu)的電 視臺全臺網(wǎng)絡(luò)化解決方案中,提出了采用企業(yè)服務(wù)總線ESB+媒體服務(wù)總線 EMB的雙線結(jié)構(gòu)。業(yè)務(wù)板塊將會被其他業(yè)務(wù)板塊調(diào)用的功能以服務(wù)的方式注 冊在企業(yè)服務(wù)總線ESB上。當需要對服務(wù)進行調(diào)用時,業(yè)務(wù)板塊將調(diào)用請求 消息按一定的接入方式傳遞給ESB。但是,在電視臺內(nèi)部的消息類型復雜多 樣,并且不同類型的消息對時效性和安全性具有不一樣的需求。同時電視臺 全臺網(wǎng)建設(shè)中,各個業(yè)務(wù)板塊往往是由不同的廠家分別構(gòu)造,使得板塊之間 存在很大的異構(gòu)性,在發(fā)送消息時也有不同的傳遞方式。
在以往的業(yè)務(wù)板塊互聯(lián)互通的設(shè)計中,往往釆取人為設(shè)定某種單一的消 息交換方式和交換格式。需要找到各個業(yè)務(wù)板塊的廠商一起商定,需要消耗 大量的時間,人力和物力,方式非常不靈活,有一點改變就需要通知所有相 關(guān)的部門和人員。而消息交換方式和交換格式的制定往往很難達成一致。由 于各個廠商對業(yè)務(wù)板塊采取的開發(fā)工具和語言都不盡相同,這些工具和語言 對具體消息傳遞技術(shù)的支持各有差別,甚至存在不支持的情況而不能進行消 息的接收和傳遞。因此,采用原始的方式在業(yè)務(wù)板塊之間實現(xiàn)信息傳遞并不 能真正解決信息孤島問題,而是需要采用統(tǒng)一的,符合國際標準又可以靈活 配置擴展的消息接入方式。
企業(yè)服務(wù)總線ESB是在SOA架構(gòu)中實現(xiàn)服務(wù)間智能化集成與管理的中介, 是分布式的、基于消息的集成解決方案,遵循開放的標準。ESB的角色是在各種IT資源一 一比如企業(yè)中分布于不同的系統(tǒng)上的應(yīng)用系統(tǒng)、平臺和服務(wù)之 間——更容易的建立可靠的通訊。ESB采用了消息封裝這一思想,f巴所有對
服務(wù)的調(diào)用都通過統(tǒng)一 的消息接口封裝起來,無論消息是同步的還是異步的。
此外ESB還可以對企業(yè)的其他消息服務(wù)也提供同樣的接口 ,例如mail, JMS, IBM MQ, MSMQ等等??梢赃@樣說,ESB是特定環(huán)境下(S0A架構(gòu)中)實施企業(yè) 集成的方式首先,在ESB系統(tǒng)中,被集成的對象被明確定義為服務(wù),而不 是傳統(tǒng)企業(yè)集成中各種各樣的中間件平臺,這樣就極大簡化了在集成異構(gòu)性 上的考慮,因為不管有怎樣的應(yīng)用底層實現(xiàn),只要是SOA架構(gòu)中的服務(wù),它 就一定是基于標準的。
現(xiàn)有企業(yè)服務(wù)總線ESB上消息接入方式主要包括WebService和消息隊列 兩大類。WebService是一種可以接收從Internet或者Intranet上的其它系 統(tǒng)中傳遞過來的請求,輕量級的獨立的通訊:技術(shù)。WebService的通信協(xié)i義 SOAP (Simple Object Access Protocol)是XML形式的失見范,可以支4寺HTTP、 SMTP等底層接口。采用這種方式進行消息的接入為同步通信機制,消息的發(fā) 送方和4妄收方須同時響應(yīng)。由于WebService是W3C標準,通常用于JAVA、 C#、 0++等多種開發(fā)語言。消息隊列的接入方式利用了操作系統(tǒng)中的消息隊列 機制,接收方和發(fā)送方不直接通信,而是經(jīng)過消息中間件間接地完成信息的 交互,由消息中間件對消息進行的管理,因此可以實現(xiàn)異步通信方式。雖然 消息中間件廠商基本是遵循了同樣的消息規(guī)范(主要是JAVA陣營和微軟陣營 兩大類),但是不同廠商的中間件產(chǎn)品之間仍然存在差異。目前市面上很多 商業(yè)的ESB產(chǎn)品,如IBM、 BEA等公司產(chǎn)品的消息隊列方式往往是只對其自身 消息中間件的支持。
發(fā)明內(nèi)容
本發(fā)明的目的是針對目前不同業(yè)務(wù)板塊的消息通過接入方式傳遞到主干 平臺所存在的技術(shù)缺陷,提供一種應(yīng)用于電視臺全臺網(wǎng)主干平臺的消息接入 系統(tǒng),該系統(tǒng)不僅支持WebService和消息隊列兩大類消息接入方式,還可以 支持并擴展對不同消息中間件的支持。
本發(fā)明的技術(shù)方案如下 一種應(yīng)用于電視臺全臺網(wǎng)主干平臺的消息接入系統(tǒng),包括企業(yè)服務(wù)總線平臺和多個業(yè)務(wù)板塊,企業(yè)服務(wù)總線平臺設(shè)有消息
接收器,以及WebService適配器和多種消息隊列適配器才莫塊,其中,在企業(yè) 服務(wù)總線平臺和業(yè)務(wù)板塊之間設(shè)有JMS消息中間件和MSMQ消息中間件,各消 息中間件與相應(yīng)的消息隊列適配器模塊連接。
進一步,如上所述的應(yīng)用于電視臺全臺網(wǎng)主干平臺的消息接入系統(tǒng),其 中,MSMQ消息中間件與MSMQ適配器模塊連接;JMS消息中間件通過分發(fā)器分 別與JMQ、 IBMMQ和ActiveMQ三種適配器模塊連接。
再進一步,JMS消息中間件的消息接入部分采用標準的JMS接口 ,能夠 與擴展的適配器模塊連接。
本發(fā)明的有益效果如下本發(fā)明所述系統(tǒng)通過二次適配的方式提供了對 WebServ ice和消息隊列兩大類的消息接入方式的支持,其中消息隊列可同時 支持符合JAVA陣營JMS規(guī)范的相關(guān)產(chǎn)品和微軟公司MSMQ兩大類??紤]到符 合JMS規(guī)范的廠商消息中間件產(chǎn)品比較多,雖然底層基礎(chǔ)一致但是訪問應(yīng)用 略有差別。本發(fā)明充分考慮到適用性,主要才是供了對SUN JMQ, IBM WebSphere MQ. Apache, ActiveMQ三種頂S消息中間件產(chǎn)品的支持,且對JMS的支持具 有良好的可擴展性,靈活配置修改后即可適用于其他頂S產(chǎn)品的消息接入。
圖1為本發(fā)明的系統(tǒng)結(jié)構(gòu)圖。
圖2為本發(fā)明的方法流程圖。
圖3為調(diào)用服務(wù)的消息格式示意圖。
圖4為消息中間件的可擴展方式示意圖。
具體實施例方式
下面結(jié)合附圖對本發(fā)明進行詳細的描述。
本發(fā)明主要應(yīng)用在廣電領(lǐng)域電視臺全臺網(wǎng)的主干平臺對其他業(yè)務(wù)板塊的 消息接收中,提供板塊間消息的接收工作。隨著電視臺內(nèi)部業(yè)務(wù)系統(tǒng)的數(shù)字 化改造,以及臺內(nèi)各種系統(tǒng)網(wǎng)絡(luò)的構(gòu)建,往往一個電視臺內(nèi)部形成了采集收
5管理、播出分發(fā)等眾 多的業(yè)務(wù)板塊。隨著板塊的增多,板塊間進行互聯(lián)互通,實現(xiàn)各個板塊之間 的信息共享化,業(yè)務(wù)流程化和管理集成化的需求應(yīng)運而生。該系統(tǒng)就是為實 現(xiàn)不同業(yè)務(wù)板塊的消息能通過多樣化的接入方式傳遞到主干平臺中。
消息隊列技術(shù)是分布式應(yīng)用間交換信息的一種技術(shù)。消息隊列可駐留在內(nèi) 存或磁盤上,隊列存儲消息直到它們被應(yīng)用程序讀走。通過消息隊列,應(yīng)用程序 可獨立地執(zhí)行,也就是說,它們不需要知道彼此的位置,或在繼續(xù)執(zhí)行前不需 要等待接收程序接收此消息。
在分布式計算環(huán)境中,為了集成分布式應(yīng)用,開發(fā)者需要對異構(gòu)網(wǎng)絡(luò)環(huán) 境下的分布式應(yīng)用提供有效的通信手段。為了管理需要共享的信息,對應(yīng)用 提供公共的信息交換機制是重要的。消息中間件位于用戶應(yīng)用和操作系統(tǒng)及 網(wǎng)絡(luò)軟件之間,它為應(yīng)用提供了公用的通信手段,并且獨立于網(wǎng)絡(luò)和操作系 統(tǒng)。中間件為開發(fā)者提供了公用于所有環(huán)境的應(yīng)用程序接口,當應(yīng)用程序中 嵌入其函數(shù)調(diào)用,它便可利用其運行的特定操作系統(tǒng)和網(wǎng)絡(luò)環(huán)境的功能,為 應(yīng)用執(zhí)行通信功能,以消息隊列技術(shù)完成信息交換,從而簡化了應(yīng)用之間數(shù) 據(jù)的傳輸,屏蔽底層異構(gòu)操作系統(tǒng)和網(wǎng)絡(luò)平臺,提供一致的通訊標準和應(yīng)用 開發(fā),確保分布式計算網(wǎng)絡(luò)環(huán)境下可靠的、跨平臺的信息傳輸和數(shù)據(jù)交換。 它基于消息隊列的存儲-轉(zhuǎn)發(fā)機制,并提供特有的異步傳輸機制,能夠基于消 息傳輸和異步事務(wù)處理實現(xiàn)應(yīng)用整合與數(shù)據(jù)交換。
本發(fā)明提供了對WebService和消息隊列兩大類的消息接入方式支持。其中 消息隊列可同時支持符合JAVA陣營JMS規(guī)范的相關(guān)產(chǎn)品和微軟公司MSMQ兩大 類??紤]到符合JMS規(guī)范的廠商消息中間件產(chǎn)品比較多,雖然底層基礎(chǔ)一致但 是訪問應(yīng)用略有差別,結(jié)合市場情況,充分考慮到適用性,主要提供了對SUN JMQ, IBM WebSphere MQ. Apache, ActiveMQ三種JMS消息中間件產(chǎn)品的支持,且 對JMS的支持具有良好可擴展性,可靈活配置修改后即可適用于其他頂S產(chǎn)品 的消息纟妄入。
*各種接入方式說明 (1 ) WebService:
企業(yè)服務(wù)總線(ESB)平臺對外提供統(tǒng)一的調(diào)用信息傳入接口 ,接口明確 定義了消息體的格式。業(yè)務(wù)板塊通過WebService直接訪問接口 ,并及時得到調(diào)用結(jié)果。(2)消息隊列在企業(yè)服務(wù)總線(ESB)平臺與業(yè)務(wù)板塊之間添加一個消息中間件,并定 義調(diào)用請求的消息格式和消息中間件的接收通道。業(yè)務(wù)板塊將調(diào)用請求消息 發(fā)送至消息中間件接收通道即可。目前市場上消息中間件的產(chǎn)品豐富多樣, 本發(fā)明的ESB平臺可滿足于不同的消息中間件產(chǎn)品。上述的兩種服務(wù)接入方式在ESB中都屬于可選項。用戶可以根據(jù)具體的 使用要求,根據(jù)ESB提供的消息接入支持項自定義消息接入方式。*消息4姿入的方法 (1)消息接入的二次適配在設(shè)計中,采用二次適配的方式。來自子系統(tǒng)的消息首先在HTTP,頂S 和MSMQ中進行適配,選擇消息接入大大類型。如果是JMS形式,根據(jù)消息信 息通過分發(fā)器(Dispatcher )將消息分發(fā)到JMQ, IBMMQ和ActiveMQ三種適配器中。從圖2中可以清楚看出二次適配的業(yè)務(wù)流程過程。首先業(yè)務(wù)板塊發(fā)送符 合ESB定義規(guī)范的調(diào)用請求消息(消息格式如圖3所示)。ESB平臺的消息 接收器獲取到消息后,首先對消息進行判斷其是WebService還是消息隊列的 方式進行消息接入。如果采用WebService方式接入,消息直接傳遞給ESB 中的WebService Adapter進行消息適配,轉(zhuǎn)換成ESB平臺可處理的中間消息 數(shù)據(jù)格式。如果采用消息隊列的接入方式,首先判斷消息要傳入的是JMS'消 息中間件還是MSMQ消息中間件,如果是MSMQ消息中間件,則消息直接由MSMQ Adapter接收后進行處理。如果要傳入頂S消息中間件,那么再次判斷消息 要傳入的頂S消息中間件的具體產(chǎn)品,選擇相應(yīng)的適配器(包括JMQ、 IB薩Q 和ActiveMQ三種適配器)。系統(tǒng)結(jié)構(gòu)如圖1所示。(2 )可擴展的JMS消息中間件適配Java Message Service (JMS)是由Sun 7>司提出的 一個Java消息的規(guī) 范。針對該規(guī)范,不少廠商都有相對應(yīng)的產(chǎn)品。因此本發(fā)明ESB平臺在設(shè)計消息接入方式支持時遵循以盡量支持大部分主流的JMS MQ Server??紤]到 不可能一次性涵蓋所有產(chǎn)品,因此設(shè)計了可擴展的JMS適配器配置模塊,如 圖4所示。所有廠商的產(chǎn)品都是以Sun公司JMS規(guī)范為基礎(chǔ),是對頂S規(guī)范 的實現(xiàn),因此消息接入部分開發(fā)全部采用標準的JMS接口 ,以避免對某一廠 商產(chǎn)品的過分依賴。如果要支持新的JMS Server,那么只需重寫小部分與JMS Server連接相關(guān)的代碼,并把該部分內(nèi)容封裝成模塊導入到原有系統(tǒng)中,即 可實現(xiàn)對新頂S Server的支持。*實現(xiàn)本發(fā)明的相關(guān)支持(1)要實現(xiàn)各種消息的接入,首先必須有ESB平臺并且各個業(yè)務(wù)板塊 的應(yīng)用程序開發(fā)語言可以支持WebService或者消息隊列的開發(fā)方式。目前在 電視臺內(nèi)的各個業(yè)務(wù)板塊應(yīng)用程序基本都是采用主流的開發(fā)語言,這些語言 對上述兩種消息接入方式都能夠很好的支持。(2 )部署應(yīng)用服務(wù)器和消息中間件服務(wù)器,如果需要對消息進行持久化 存儲,還需要一臺數(shù)據(jù)庫服務(wù)器。主干ESB為采用Java語言開發(fā)的Web應(yīng)用 軟件,需要Web應(yīng)用服務(wù)器對其的運行進行支撐。不同的Web應(yīng)用服務(wù)器對 消息中間件服務(wù)器支持也不太一樣,并且需要進行配置才能一起工作,具體 配置方法屬本領(lǐng)域的公知技術(shù),此處不進行詳述。例如,選用JBoss Application Server 4.0.1 + ActiveMQ 4.0.1 + Microsoft SQL Server2000,需要先整合JBoss AS和ActiveMQ,整合完成 后,在ESB中選擇"使用JMS接入",則業(yè)務(wù)板塊以JAVA發(fā)送的調(diào)用消息將 傳遞到ActiveMQ中緩存,供ESB讀耳又后進行處理。本發(fā)明所述的系統(tǒng)并不限于具體實施方式
中所述的實施例,本領(lǐng)域技術(shù)人 員根據(jù)本發(fā)明的技術(shù)方案得出其他的實施方式,同樣屬于本發(fā)明的技術(shù)創(chuàng)新范圍。
權(quán)利要求
1.一種應(yīng)用于電視臺全臺網(wǎng)主干平臺的消息接入系統(tǒng),包括企業(yè)服務(wù)總線平臺和多個業(yè)務(wù)板塊,企業(yè)服務(wù)總線平臺設(shè)有消息接收器,以及WebService適配器和多種消息隊列適配器模塊,其特征在于在企業(yè)服務(wù)總線平臺和業(yè)務(wù)板塊之間設(shè)有JMS消息中間件和MSMQ消息中間件,各消息中間件與相應(yīng)的消息隊列適配器模塊連接。
2. 如權(quán)利要求1所述的應(yīng)用于電視臺全臺網(wǎng)主干平臺的消息接入系統(tǒng), 其特征在于MSMQ消息中間件與MSMQ適配器模塊連接。
3. 如權(quán)利要求1所述的應(yīng)用于電視臺全臺網(wǎng)主干平臺的消息接入系統(tǒng), 其特征在于JMS消息中間件通過分發(fā)器分別與頂Q、 IBMMQ和ActiveMQ三 種適配器模塊連接。
4. 如權(quán)利要求3所述的應(yīng)用于電視臺全臺網(wǎng)主干平臺的消息接入系統(tǒng), 其特征在于JMS消息中間件的消息接入部分采用標準的頂S接口 ,能夠與 擴展的適配器模塊連接。
全文摘要
本發(fā)明涉及廣電領(lǐng)域電視節(jié)目制播技術(shù),具體涉及一種應(yīng)用于電視臺全臺網(wǎng)主干平臺的消息接入系統(tǒng)。該系統(tǒng)包括企業(yè)服務(wù)總線平臺和多個業(yè)務(wù)板塊,企業(yè)服務(wù)總線平臺設(shè)有消息接收器,以及WebService適配器和多種消息隊列適配器模塊,在企業(yè)服務(wù)總線平臺和業(yè)務(wù)板塊之間設(shè)有JMS消息中間件和MSMQ消息中間件,各消息中間件與相應(yīng)的消息隊列適配器模塊連接。該系統(tǒng)不僅支持WebService和消息隊列兩大類消息接入方式,還可以支持并擴展對不同消息中間件的支持。
文檔編號H04L12/58GK101651632SQ20081011825
公開日2010年2月17日 申請日期2008年8月12日 優(yōu)先權(quán)日2008年8月12日
發(fā)明者姚慶輝, 偉 孫, 張萬軍, 燦 徐, 軍 李, 溫曉瑤, 王堃越 申請人:新奧特(北京)視頻技術(shù)有限公司