[發(fā)明專利]消息處理系統(tǒng)有效
| 申請?zhí)枺?/td> | 201910599030.1 | 申請日: | 2019-07-04 |
| 公開(公告)號: | CN110351355B | 公開(公告)日: | 2022-02-25 |
| 發(fā)明(設計)人: | 賀州;楊威 | 申請(專利權)人: | 蘇寧云計算有限公司 |
| 主分類號: | H04L67/562 | 分類號: | H04L67/562;H04L67/566;H04L67/568;H04L41/082;H04L41/0853;H04L41/0896 |
| 代理公司: | 北京市萬慧達律師事務所 11111 | 代理人: | 黃玉東 |
| 地址: | 210000 江蘇省南*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 消息 處理 系統(tǒng) | ||
1.一種消息處理系統(tǒng),其特征在于,包括:
生產(chǎn)模塊,用于將待處理消息發(fā)送到當前版本的消息隊列所在的代理模塊;當代理模塊拒絕接收所述待處理消息時,更新當前版本,并向更新后的當前版本的消息隊列所在的代理模塊發(fā)送所述待處理消息;
代理模塊,用于緩存所述生產(chǎn)模塊發(fā)送的待處理消息;一個所述代理模塊中至少包括一個消息隊列;所述消息隊列具有讀過期屬性和寫過期屬性,且讀過期屬性和寫過期屬性的初始值均為false;在擴縮容時,低版本的消息隊列感知到有比自己版本高的消息隊列出現(xiàn)時,修改自身的寫過期屬性為true,并拒絕發(fā)送方發(fā)送的新消息,收到此狀態(tài)變化的發(fā)送方進程,向擴縮容后的寫過期屬性為false的高版本的消息隊列發(fā)送消息;
所述代理模塊還用于:定期遍歷寫過期屬性為true的消息隊列,檢查這些消息隊列的消息深度;當某個消息隊列的消息深度為0,即無堆積消息時,將該消息隊列的讀過期屬性設置為true,并同步給配置模塊;
消費模塊,用于確定讀過期屬性為false且版本最低的消息隊列;從確定出的消息隊列中取出緩存的待處理消息進行處理;直到該版本的所有消息隊列的讀過期屬性均為true之后,再處理下一個版本的消息隊列上的消息。
2.根據(jù)權利要求1所述的系統(tǒng),其特征在于:
所述代理模塊的數(shù)量為多個,分別屬于一個或多個版本;
屬于某一個版本的一個或多個所述代理模塊形成該版本的代理集群。
3.根據(jù)權利要求2所述的系統(tǒng),其特征在于,還包括:
配置模塊,用于對各個版本的所述代理集群進行配置,以及存儲配置信息并下發(fā)版本變更通知。
4.根據(jù)權利要求3所述的系統(tǒng),其特征在于,所述將待處理消息發(fā)送到當前版本的消息隊列所在的代理模塊時,所述生產(chǎn)模塊具體用于:
根據(jù)存儲的版本信息確定當前版本的代理集群;
根據(jù)待處理消息的順序值確定當前版本的代理集群中的一個代理模塊;
將待處理消息發(fā)送到確定出的代理模塊。
5.根據(jù)權利要求4所述的系統(tǒng),其特征在于,所述更新當前版本時,所述生產(chǎn)模塊具體用于:
從所述配置模塊獲取最新的配置信息;
根據(jù)獲取的配置信息更新存儲的版本信息。
6.根據(jù)權利要求3所述的系統(tǒng),其特征在于,所述生產(chǎn)模塊還用于:
在接收到所述配置模塊下發(fā)的版本變更通知時,根據(jù)所述版本變更通知更新存儲的版本信息。
7.根據(jù)權利要求3-6任一項所述的系統(tǒng),其特征在于,
所述代理模塊還用于:
在接收到所述配置模塊下發(fā)的版本變更通知時,判斷最新版本是否高于自身版本;
如果是,則將自身的所有消息隊列的寫過期屬性設置為true,并同步給所述配置模塊。
8.根據(jù)權利要求7所述的系統(tǒng),其特征在于,所述代理模塊具體用于:
在接收到所述生產(chǎn)模塊發(fā)送的待處理消息時,檢查自身的消息隊列的寫過期屬性;
如果寫過期屬性為false,則將所述待處理消息放入自身的消息隊列中進行緩存;
如果寫過期屬性為true,則拒絕緩存,并將結果反饋給所述生產(chǎn)模塊。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于蘇寧云計算有限公司,未經(jīng)蘇寧云計算有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910599030.1/1.html,轉載請聲明來源鉆瓜專利網(wǎng)。





