[發(fā)明專利]一種用于消息分配、消費的方法及裝置,用于消息處理的系統(tǒng)有效
| 申請?zhí)枺?/td> | 201410107984.3 | 申請日: | 2014-03-21 |
| 公開(公告)號: | CN104935622B | 公開(公告)日: | 2019-03-15 |
| 發(fā)明(設計)人: | 徐松;杜濤;岑英嵐 | 申請(專利權)人: | 阿里巴巴集團控股有限公司 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08 |
| 代理公司: | 北京清源匯知識產權代理事務所(特殊普通合伙) 11644 | 代理人: | 馮德魁 |
| 地址: | 英屬開曼群島大開*** | 國省代碼: | 開曼群島;KY |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 用于 消息 分配 消費 方法 裝置 處理 系統(tǒng) | ||
本申請公開了一種用于消息分配的方法和裝置、一種用于消息消費的方法及裝置以及一種用于消息處理的系統(tǒng);所述用于消息分配的方法包括:獲取滿足消息消費活躍度閾值的消息消費者列表;對于滿足消息消費活躍度閾值的消息消費者,依據活躍度由高到低的順序依次向消息消費者分配消息隊列中的消息。本申請的方案可將整個消費群、消息中間件狀態(tài)調整為最健康的服務狀態(tài),最高效的性能狀態(tài)。
技術領域
本申請涉及消息處理技術領域,具體涉及一種用于消息分配的方法及裝置,以及一種用于消息消費的方法及裝置。本申請同時涉及一種用于消息處理的系統(tǒng)。
背景技術
面向消息的中間件(也稱為消息中間件,MOM),提供了以松散耦合的靈活方式集成應用程序的一種機制。它們提供了基于存儲和轉發(fā)的應用程序之間的異步數據發(fā)送,即應用程序彼此不直接通信,而是與作為中介的MOM通信。MOM提供了有保證的消息發(fā)送,應用程序開發(fā)人員無需了解遠程過程調用(PRC)和網絡/通信協(xié)議的細節(jié)。
消息中間件利用高效可靠的消息傳遞機制進行平臺無關的數據交流,并基于數據通信來進行分布式系統(tǒng)的集成。通過提供消息傳遞和消息排隊模型,它可以在分布式環(huán)境下擴展進程間的通信。
消息中間件適用于需要可靠的數據傳送的分布式環(huán)境。采用消息中間件機制的系統(tǒng)中,不同的對象之間通過傳遞消息來激活對方的事件,完成相應的操作。發(fā)送者將消息發(fā)送給消息服務器,消息服務器將消息存放在若干隊列中,在合適的時候再將消息轉發(fā)給接收者。消息中間件能在不同平臺之間通信,它常被用來屏蔽掉各種平臺及協(xié)議之間的特性,實現應用程序之間的協(xié)同,其優(yōu)點在于能夠在客戶和服務器之間提供同步和異步的連接,并且在任何時刻都可以將消息進行傳送或者存儲轉發(fā),這也是它比遠程過程調用更進一步的原因。
在現有的消息中間件中,消息分配機制為基于先進先出(FIFO)的推送機制,所謂先進先出是指消息由生產者發(fā)送至中間件后,在消息中間件中排隊等候發(fā)送,先進入消息中間件的消息最先由該消息中間件轉發(fā)出去。所謂推送機制為消息消費者只能被動的監(jiān)聽消息中間件的發(fā)送情況,在中間件轉發(fā)推送相應的消息后,消息到達后才開始消費消息。具體而言,FIFO隊列模式,為消息中間件首先從一堆消費者中取模得到特定消費者,然后將隊列中首個消息推送給該消費者,以此類推,將隊列中的消息推送出去。若消息需回滾,需主動通知生產者,消息中間件不支持消息的重發(fā)或是回滾操作。
消息的消費速度受限于消息中間件的轉發(fā)能力,且消息分配方式以平均優(yōu)先為主,比如按照客戶端數量取模。為盡可能的達到平均以及時間順序性的前提下,這種模式要求很高:a)消費端性能必須一樣,性能不一樣的消費端可能引起性能差異帶來的消息積壓或性能問題;b)不能容忍異常情況,異常時消費速度遇到變化時,消息中間件無法感知,進而造成因平均分配帶來事實上的資源分配不均。
發(fā)明內容
本申請?zhí)峁┮环N用于消息分配的方法和裝置,以解決現有消息處理的上述的問題。本申請另外提供一種用于消息消費的方法和裝置,以及一種用于消息處理的系統(tǒng)。
本申請?zhí)峁┑囊环N用于消息分配的方法,包括:
獲取滿足消息消費活躍度閾值的消息消費者列表;
對于滿足消息消費活躍度閾值的消息消費者,依據活躍度由高到低的順序依次向消息消費者分配消息隊列中的消息。
可選的,所述獲取滿足消息消費活躍度閾值的消息消費者列表包括:
接收消息消費者發(fā)送的該消費者的當前活躍度值;
計算該當前活躍度值與歷史最大活躍度的比值;
將所述比值大于或等于所述消息消費者活躍度閾值的消息消費者作為滿足消息消費活躍度閾值的消息消費者。
可選的,所述當前活躍度值為表征消息消費者當前服務能力值的單機耗時、是否消費成功和單機每秒事務處理量中的至少一種及其權重的加權平均數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里巴巴集團控股有限公司,未經阿里巴巴集團控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410107984.3/2.html,轉載請聲明來源鉆瓜專利網。





