[發明專利]消息管理方法有效
| 申請號: | 200810090655.7 | 申請日: | 2008-04-07 |
| 公開(公告)號: | CN101459627A | 公開(公告)日: | 2009-06-17 |
| 發明(設計)人: | 全銳;孟照星;羅秋野 | 申請(專利權)人: | 中興通訊股份有限公司 |
| 主分類號: | H04L12/58 | 分類號: | H04L12/58;H04L29/06 |
| 代理公司: | 北京康信知識產權代理有限責任公司 | 代理人: | 尚志峰;吳孟秋 |
| 地址: | 518057廣東省深圳市南*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 消息 管理 方法 | ||
技術領域
本發明涉及通信領域,并且特別地,涉及一種消息管理方法。?
背景技術
消息系統能夠在不同進程之間提供靈活的消息傳遞,在消息的傳遞過程中,發送和接收端松耦合的應用模式使其廣泛應用在進程通信,系統集成等領域,成為將企業各種應用集成在一起的基礎。?
比較典型的消息系統是各種應用服務器的消息中間件,其可以實現跨平臺操作,為不同操作系統上的應用軟件集成提供服務,這也是J2EE規范的要求。例如,BEA的WebLogic,IBM的WebSphere,以及著名的開源應用服務器Jboss都有對應的消息服務器均是目前比較知名的應用服務器。?
消息系統可以提供一種松耦合的應用模式。發送者將消息發送到服務器上特定目的地,接收者從特定目的地接收消息,發送端和接收端不直接發生聯系。消息按照先進先出的原則被接收,所以每個目的地對應存在一個消息隊列。消息的生產和消費可以完全異步的工作,通過消息服務器的目的地將二者聯系起來,這種做法能夠為應用提供了較大靈活性。?
消息系統一般包括消息收發模塊、隊列管理模塊、消息路由模塊、以及規則處理模塊等。其中,消息收發模塊主要負責消息的接?收和發送,其以并發的邏輯接收各個發送端發送到各個目的地的消息,并為接收端接收消息服務。消息路由模塊主要負責消息在服務器上的路由,使消息到達服務器上的對應目的地并被相應接收。規則處理模塊主要是作用過濾器等各種規則。隊列管理模塊主要是管理消息在服務器上的存儲和隊列組織方式,該模塊是消息服務器壓力最大的模塊,其管理方式直接關系到消息服務器的效率、承受壓力的能力、和響應收發端請求的及時性,也是消息服務器極有可能產生性能瓶頸的地方。?
由于消息的發送和異步接收,在應用中可能出現下列情況:大量的發送者大壓力發送消息,但相應接收者卻無法及時接收處理消息,導致服務器上駐留大量消息。例如,在電信網管系統中,通過消息服務器來路由告警信息,如果遇到告警風暴,則短時間內(比如幾十分鐘)大量告警消息(如幾十萬條)進入服務器,在這種情況下就要求消息系統具備高效的隊列管理能力,既能承受大量消息進入并駐留在服務器上,同時又不能因為駐留的消息過多而導致內存溢出或者降低效率。?
現在的消息系統一般有三種隊列管理模式:?
(1)第一種是內存消息隊列模式,其原理很簡單,將消息全部放在內存中,這樣,發送和接收的效率都很高,但是其最大的弱點就是不能駐留大量消息在服務器上,當消息風暴到來時,短時間會導致服務器內存溢出,或者停止接收消息,或者開始丟棄消息,一般小型消息服務器采用這種模式,其實現簡單,消息量少;?
(2)第二種是硬盤消息隊列模式,其將消息存在二級存儲介質中,服務器駐留消息的能力依賴存儲介質的剩余空間,這種模式能夠駐留大量消息在服務器上,但是由于消息實際存在二級存儲介質中,所以消息傳遞的時候會有大量的硬盤IO操作,效率較低,使得?整個消息服務器的響應能力降低,這種模式主要用在對收發消息速度要求不是很高但消息量大的場合;?
(3)第三種是結合前兩種模式,在內存不緊張的時候,采用內存消息隊列,在由于消息大量駐留導致內存變得緊張時,使用硬盤消息隊列模式,這種方式在一定程度上保證了效率,也能駐留大量的消息在服務器,是目前較好的一種模式,一些商用級的大型應用服務器消息中間件一般采用第(3)種模式。不過,這種模式在消息出現堆積的時候,處理方式與硬盤消息隊列中的處理模式很類似,并且還存在大量磁盤IO操作,導致數據傳輸效率不能達到最優。究其根本原因,是由于這些方法都沒有針對消息系統一些特征,而無法達到真正的高效。?
然而,目前尚未提出能夠解決上述三個問題的技術方案。?
發明內容
考慮到上述問題而做出本發明,為此,本發明的主要目的在于提供一種消息管理方法,以解決相關技術中無法應對消息風暴、消息發送和接收效率低的問題。?
根據本發明的實施例,提供了一種消息管理方法,包括:步驟S102,消息服務器將接收的消息分解為邏輯消息和相應的物理消息;步驟S104,將邏輯消息插入內存中的邏輯消息隊列,并將物理消息插入內存中的物理消息隊列,并根據預定規則將物理消息從物理消息在內存的物理消息隊列、高速緩存的物理消息隊列、以及持久化存儲器的物理消息隊列之間進行置換;步驟S106,在消息被接收方接收時,接收方獲取邏輯隊列中的邏輯消息,并獲取相應的物理消息。?
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中興通訊股份有限公司,未經中興通訊股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200810090655.7/2.html,轉載請聲明來源鉆瓜專利網。





