[發(fā)明專利]用于消息服務的處理方法、裝置及系統(tǒng)、消息服務系統(tǒng)在審
| 申請?zhí)枺?/td> | 201410032412.3 | 申請日: | 2014-01-23 |
| 公開(公告)號: | CN104811459A | 公開(公告)日: | 2015-07-29 |
| 發(fā)明(設計)人: | 吳崢濤;常磊 | 申請(專利權)人: | 阿里巴巴集團控股有限公司 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08 |
| 代理公司: | 北京市清華源律師事務所 11441 | 代理人: | 沈泳;李贊堅 |
| 地址: | 英屬開曼群島大開*** | 國省代碼: | 開曼群島;KY |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 用于 消息 服務 處理 方法 裝置 系統(tǒng) | ||
技術領域
本申請涉及消息服務技術領域,具體涉及一種用于消息發(fā)布的消息處理方法、一種用于消息訂閱的消息處理方法及其裝置。本申請同時涉及一種用于消息發(fā)布的消息管理方法、一種用于消息訂閱的消息管理方法及其系統(tǒng),一種消息服務系統(tǒng)。
背景技術
在云計算的迅猛發(fā)展下,越來越多的分布式應用構建和部署在云環(huán)境下,這些分布式應用絕大多數采用基于消息系統(tǒng)的架構。在傳統(tǒng)的消息服務系統(tǒng)中,消息隊列中間件是系統(tǒng)的核心組件,其通常承擔兩個核心功能:分別是連接管理和消息管理。即不但要承擔對消息接收發(fā)送的連接管理功能,還要承擔對接收或發(fā)送的消息管理功能。然而,上述功能劃分的消息中間件,在海量連接壓力下服務器就有被壓垮的可能,此時消息中間件消息管理功能也會受到影響。
為了支撐海量連接,不得不依賴于增加更多的消息隊列服務器,盡管有些時候大量連接的負載可能并不高(大量的連接可能僅僅需要保持,其傳輸的數據量可能并不大)。同樣地,大量的消息需要管理時也會影響服務器的性能,導致新連接的無法建立。因此,傳統(tǒng)的消息服務系統(tǒng)存在功能相互耦合、成本過高、資源浪費的問題。
為了解決消息服務系統(tǒng)功能耦合,成本過高的問題,業(yè)內針對它采用了以下優(yōu)化方案:借鑒“讀寫分離”的思想,將發(fā)送消息和接收消息這兩類功能分離(或者分成生產者、消費者兩個角色),使他們落到消息隊列集群的不同服務器。
發(fā)送消息這類功能的特點:它通常是短連接,即發(fā)起到消息隊列服務器的連接,發(fā)送消息,關閉連接。接收消息這類功能的特點:它是長連接,即發(fā)起并保持到消息隊列服務器的連接,當服務器端接收到消息后,投遞消息給該連接,由該連接去消費和處理消息。
將發(fā)送消息和接收消息這兩類功能分離到不同的服務器上,實際上是將短連接和長連接分離到不同的服務器上,通過這樣的分離,在需要時可以分別增加服務器,這樣就可以節(jié)省一些物理資源。
將發(fā)送消息和接收消息這兩類功能分離到不同的服務器上實際上是治標不治本的方案,若壓力持續(xù)增大時,仍然需要增加更多的服務器來應對壓力,并沒能真正解決功能耦合,成本高的問題。
申請內容
本申請?zhí)峁┮环N用于消息發(fā)布和訂閱的消息處理方法及其裝置,以及一種用于消息發(fā)布和訂閱的消息管理方法及其裝置,以解決現有的消息服務系統(tǒng)及方法的上述的問題。本申請另外提供一種用于消息服務的系統(tǒng)及一種消息服務系統(tǒng)。
本申請?zhí)峁┑囊环N用于消息發(fā)布的消息處理方法,包括:
接收客戶端發(fā)布的消息;
建立與消息管理服務器的連接,將所述客戶端發(fā)布的消息轉發(fā)到消息管理服務器;
在消息管理服務器處理后向客戶端發(fā)送發(fā)布成功的響應。
可選的,所述接收客戶端發(fā)布的消息之前,建立與客戶端之間的連接。
可選的,所述建立與所述客戶端之間的連接包括:
接收客戶端以TCP協議發(fā)起的連接請求,
向客戶端回應所述連接請求,并要求客戶端確認;
接收客戶端返回的確認,建立與客戶端的連接。
可選的,所述連接為基于超文本協議的短連接。
可選的,所述建立與消息管理服務器的連接,將客戶端發(fā)布的消息轉發(fā)到消息管理服務器包括:
建立與消息管理服務器的連接,并基于該連接建立虛擬通信通道;
將消息通過所述虛擬通信通道發(fā)布到所述消息管理服務器。
可選的,所述建立與消息管理服務器的連接,并基于該連接建立虛擬通信通道包括:
由預先建立的與消息管理服務器之間連接的連接池中選擇任意一個連接;
在所選擇的連接中選擇一個基于該連接的虛擬通信通道。
可選的,所述與消息管理服務器之間連接為長連接。
可選的,所述接收客戶端發(fā)布的消息具體是指在多個接收端構成接收端集群中擇一接收客戶端發(fā)布的消息;
所述建立與客戶端之間的連接具體包括:
通過負載均衡算法獲得接收端集群中各個接收端的負載狀況和健康狀況;
根據所述負載狀況和健康狀況依據壓力均負原則建立相應接收端與客戶端的連接。
可選的,所述在消息管理服務器處理后向客戶端發(fā)送發(fā)布成功的響應包括:
接收消息管理服務器發(fā)送的消息已存儲的響應消息;
收到所述響應消息后向客戶端發(fā)送發(fā)布成功的響應。
此外,本申請還提供一種用于消息訂閱的消息處理方法,包括:
接收客戶端發(fā)出的訂閱消息的請求,建立與客戶端之間的連接;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里巴巴集團控股有限公司,未經阿里巴巴集團控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410032412.3/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:云媒體資源分配的方法及裝置
- 下一篇:一種安全的云端控制方法





