[发明专利]消息处理、存储方法、装置及系统在审
申请号: | 201811471783.6 | 申请日: | 2018-12-04 |
公开(公告)号: | CN110012050A | 公开(公告)日: | 2019-07-12 |
发明(设计)人: | 肖旭东;崔晓旻 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
地址: | 英属开曼群岛大开*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 消息发送方 存储 分区 维度 装置及系统 存储消息 消息处理 中心节点 服务端 分布式文件系统 消息处理系统 消息发送模块 串行发送 分区标识 顺序性 配置 保证 服务 | ||
本说明书实施例提供一种消息处理、存储方法、装置及系统,本说明书实施例的消息处理系统包括中心节点、至少一个服务端、以及设于消息发送方的消息发送模块。中心节点通过服务端预先为消息发送方的业务在分布式文件系统中配置分区,消息的分区个数固定,不会因为服务端的上、下线而影响同一消息发送方的分区数量。由于同一维度的待存储消息对应相同的分区标识,可以将同一维度的待存储消息串行发送并存储至同一分区中,保证同一维度的消息被顺序性存储。
技术领域
本说明书涉及数据处理领域,尤其涉及消息处理、存储方法、装置及系统。
背景技术
随着互联网的迅猛发展,各种业务架构也越来越复杂,逐渐完成从传统单一架构到分布式架构的转变。在分布式架构下,子系统需要通过消息中间件来进行通信。消息中间件是分布式系统中常用的一种消息通讯的组件,主要用于系统间的解耦,是一种以消息为通讯介质并且帮助转发消息给不同的应用的系统。参与方按角色可以分为:消息发送方,消息服务端和消息消费方。消息发送方可以将消息发送到消息服务端,其他消息消费方可以通过向消息服务端发送消费请求来读取已存储成功的消息。某些消息,需要保证消息发送过程中的次序与消息消费过程中的次序保持一致。而消息在消息队列的流转过程中,可能导致消息的乱序,例如,出现消息先发送但后消费、或消息后发送先消费等现象。因此,需提供一种能保证消息顺序性的方案。
发明内容
为克服相关技术中存在的问题,本说明书提供了消息处理、存储方法、装置及系统。
根据本说明书实施例的第一方面,提供一种消息处理系统,包括中心节点、至少一个服务端、以及设于消息发送方的消息发送模块;
中心节点通过服务端为消息发送方的业务在分布式文件系统中配置分区,所述业务对应一个分区集合,所述业务的消息被划分为不同维度、且同一维度的消息是需顺序存储的消息;
消息发送模块用于从待存储消息所属业务的分区集合中确定用于存储所述待存储消息的分区的分区标识,并将待存储消息串行发送至与消息主题和所述分区标识对应的服务端,其中,同一维度的待存储消息对应相同的分区标识,所述消息主题用于标识所述业务;
服务端用于根据所述分区标识和消息主题确定分区路径,将所述待存储消息存储在分区路径对应的分区中。
在一个可选的实施例中,所述中心节点具体用于:在接收到消息发送方发送的携带有消息主题的分区申请请求时,至少依据该消息主题所指示的业务所需分区个数,确定服务端的服务端标识,并生成分区状态信息,将所述分区状态信息发送至各服务端;其中,所述服务端用于配置和管控所述业务的至少一个分区,所述分区状态信息包括:所述服务端标识、所述消息主题以及所述分区的分区标识三者对应关系;
所述服务端具体用于:依据分区状态信息中的服务端标识确定其是否有配置和管控分区的权限,并在具有权限时,为消息发送方在分布式文件系统中配置与所述消息主题和分区标识对应的分区。
在一个可选的实施例中,所述分区标识为预设取值范围内的值,预设取值范围的上限值基于分区个数而确定;消息发送模块从待存储消息所属业务的分区集合中确定用于存储所述待存储消息的分区的分区标识,包括:
所述消息发送模块利用哈希函数计算待存储消息所携带的路由标识的哈希值,同一维度的待存储消息所携带的路由标识相同;将所述哈希值与所述分区集合中分区个数进行预设运算,获得用于存储待存储消息的分区的分区标识,所述预设运算包括求模运算或求余运算。
在一个可选的实施例中,所述中心节点还用于:监测到服务端异常时,分配其他服务端以新建文件的方式接管该异常服务端所管控的分区,并将异常服务端所管控的分区对应的文件状态更改为不可写状态。
在一个可选的实施例中,所述系统还包括设于消息消费方的消息消费模块,消息消费方通过消息消费模块从中心节点中确定所订阅消息的分区标识和消息主题;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811471783.6/2.html,转载请声明来源钻瓜专利网。