[发明专利]消息发布、处理、订阅方法、装置及系统有效
申请号: | 201811003951.9 | 申请日: | 2018-08-30 |
公开(公告)号: | CN110875935B | 公开(公告)日: | 2023-03-24 |
发明(设计)人: | 彭涛 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | H04L67/566 | 分类号: | H04L67/566;H04L67/568;H04L49/90 |
代理公司: | 北京同钧律师事务所 16037 | 代理人: | 吴梅锡 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 消息 发布 处理 订阅 方法 装置 系统 | ||
1.一种消息发布方法,所述方法应用于分布式系统,所述方法包括:
确定待发布消息所属的消息主题;以及,确定所述待发布消息在所述消息主题中所对应的虚拟队列;
向消息服务节点发送消息发布请求;在所述消息服务节点中,所述消息主题对应至少两个虚拟队列;
其中,所述消息发布请求中携带有所述待发布消息、所述待发布消息所属的消息主题和所述待发布消息所对应的虚拟队列序号,以使所述消息服务节点将所述待发布消息发布至所述消息主题中与所述虚拟队列序号对应的虚拟队列。
2.如权利要求1所述的方法,每个所述虚拟队列包括两种状态:
锁定状态和无锁状态。
3.如权利要求1或2所述的方法,所述确定所述待发布消息在所述消息主题中所对应的虚拟队列,包括:
获取待发布消息的消息主键;其中,所述消息主键包括所述待发布消息中的指定字符串;
根据所述消息主键和预先设置的规则,确定所述待发布消息在所述消息主题中所对应的虚拟队列。
4.如权利要求3所述的方法,所述根据所述消息主键和预先设置的规则,确定所述待发布消息所对应的虚拟队列,包括:
将所述指定字符串转化为与其对应的数值;
将所述数值与所述待发布消息所属消息主题所对应的虚拟队列的数目相除取余数;
根据得到的余数确定所述待发布消息在所述消息主题中所对应的虚拟队列。
5.如权利要求4所述的方法,所述根据得到的余数确定所述待发布消息在所述消息主题中所对应的虚拟队列,包括:
将所述余数确定为所述待发布消息在所述消息主题中所对应的虚拟队列的序号;其中,在所述消息服务节点中,所述消息主题所对应的虚拟队列均设置有序号。
6.一种消息处理方法,所述方法应用于分布式系统,所述方法包括:
消息服务节点接收发布节点发送的消息发布请求;其中,所述消息发布请求中携带有待发布消息、所述待发布消息所属的消息主题和所述待发布消息所对应的虚拟队列序号;所述待发布消息所属的消息主题对应至少两个虚拟队列;
所述消息服务节点将所述待发布消息发布至所述消息主题中与所述虚拟队列序号对应的虚拟队列。
7.如权利要求6所述的方法,所述方法还包括:
所述消息服务节点接收订阅节点发送的消息订阅请求;其中,所述消息订阅请求中携带有订阅消息主题标识;
所述消息服务节点确定所述订阅消息主题标识所对应的订阅消息主题;
所述消息服务节点确定推送给所述订阅节点的订阅消息的数量,并根据所述订阅消息的数量通过所述订阅消息主题所对应的虚拟队列将所述订阅消息推送给所述订阅节点。
8.如权利要求7所述的方法,所述消息订阅请求中携带有订阅节点标识;
所述消息服务节点所述确定推送给所述订阅节点的订阅消息的数量,包括:
所述消息服务节点根据所述订阅节点标识,从预先存储的各个订阅节点所对应的消息分配比例中确定所述订阅节点所对应的消息分配比例;
所述消息服务节点根据所述订阅节点所对应的消息分配比例、所述订阅消息主题所对应的虚拟队列的数目,确定推送给所述订阅节点的订阅消息的数量;其中,通过一个虚拟队列向所述订阅节点推送一个订阅消息。
9.如权利要求6所述的方法,所述方法还包括:
所述消息服务节点接收订阅节点发送的消息订阅请求;其中,所述消息订阅请求中携带有订阅消息主题标识和订阅消息的数量;
所述消息服务节点确定所述订阅消息主题标识所对应的订阅消息主题,并根据所述订阅消息的数量通过所述订阅消息主题所对应的虚拟队列将所述订阅消息推送给所述订阅节点。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811003951.9/1.html,转载请声明来源钻瓜专利网。