一种消息处理的方法和装置制造方法及图纸

技术编号:39834830 阅读:6 留言:0更新日期:2023-12-29 16:18
本发明专利技术公开了一种消息处理的方法和装置,涉及计算机技术领域

【技术实现步骤摘要】
一种消息处理的方法和装置


[0001]本专利技术涉及计算机
,尤其涉及一种消息处理的方法和装置


技术介绍

[0002]在数据处理领域,当接收到上游业务系统发送的消息处理请求时,需要根据消息对应的业务规则对消息进行处理,现有技术中,采用在每次接收到消息处理请求后,根据消息满足的条件确定对应的业务规则,这种方式导致接口响应时间长,浪费服务器性能,且增加数据库的访问压力;或者是采用对接收到的消息添加标记,定时启动进程扫描带标记的消息,然后根据消息满足的条件确定对应的业务规则,这种方式的处理效果受限于进程的执行频率,执行频率高浪费服务器性能,执行频率低易造成消息堆积,不适用于高并发场景下的消息处理


技术实现思路

[0003]有鉴于此,本专利技术实施例提供一种消息处理的方法和装置,能够实现高并发场景下消息的实时处理,保证系统的高可用性,提升消息处理效率,且具有横向可扩展性

[0004]为实现上述目的,根据本专利技术实施例的一个方面,提供了一种消息处理的方法,包括:
[0005]响应于接收到生产者发送的待处理消息,确定与所述待处理消息对应的存储标识;
[0006]将所述待处理消息存储到与所述存储标识对应的存储集合中;
[0007]响应于监测到所述存储集合中存在待处理消息,将所述存储集合中的待处理消息发送至消息队列中,以使得消费者消费所述消息队列中的所述待处理消息

[0008]可选地,所述待处理消息为核销完成的订单信息,所述订单信息包括订单标识,确定与所述待处理消息对应的存储标识,包括:
[0009]获取所有存储集合中每个存储集合的存储标识,根据每个存储集合的存储标识和预设规则确定每个存储集合对应的第一指标值;
[0010]获取所述生产者根据所述待处理消息的订单标识和预设规则确定的与所述待处理消息对应的第二指标值;
[0011]根据所述第二指标值和各个第一指标值的大小确定与所述第二指标值对应的第一指标值,以确定与所述待处理消息对应的存储标识

[0012]可选地,所述预设规则为一致性哈希算法,所述第一指标值和所述第二指标值分布在所述一致性哈希算法形成的环形数字空间中,根据所述第二指标值和各个第一指标值的大小确定与所述第二指标值对应的第一指标值,包括:
[0013]从所述第二指标值的位置开始,按照顺序针查询所述环形数据空间中与所述第二指标值距离最近的第一指标值;
[0014]将所述与所述第二指标值距离最近的第一指标值作为与所述第二指标值对应的
第一指标值

[0015]可选地,所述订单信息包括核销完成时间戳,将所述待处理消息存储到与所述存储标识对应的存储集合中,包括:
[0016]以所述核销完成时间戳作为指标值;
[0017]按照指标值从小到大的顺序将所述待处理消息存储到所述存储集合中,以确定所述存储集合中各个待处理消息的排列顺序

[0018]可选地,将所述存储集合中的待处理消息发送至消息队列中,包括:
[0019]确定与所述存储标识对应的进程标识;
[0020]采用与所述进程标识对应的进程循环执行以下过程:获取所述存储集合中指标值最小的待处理消息,采用所述进程将所述指标值最小的待处理消息发送至所述消息队列中

[0021]可选地,将所述存储集合中的待处理消息发送至消息队列中,包括:
[0022]确定与所述存储标识对应的进程标识;
[0023]采用与所述进程标识对应的进程循环执行以下过程:获取所述存储集合中的全部或部分待处理消息,采用所述进程将所述全部或部分待处理消息发送至所述消息队列中

[0024]可选地,所述进程采用
Zookeeper
单进程部署的方式确定

[0025]根据本专利技术实施例的再一个方面,提供了一种消息处理的装置,包括:
[0026]确定模块,响应于接收到生产者发送的待处理消息,确定与所述待处理消息对应的存储标识;
[0027]存储模块,将所述待处理消息存储到所述存储标识对应的存储集合中;
[0028]发送模块,响应于监测到所述存储集合中存在待处理消息,将所述存储集合中的待处理消息发送至消息队列中,以使得消费者消费所述消息队列中的所述待处理消息

[0029]根据本专利技术实施例的另一个方面,提供了一种电子设备,包括:
[0030]一个或多个处理器;
[0031]存储装置,用于存储一个或多个程序,
[0032]当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本专利技术提供的消息处理的方法

[0033]根据本专利技术实施例的还一个方面,提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本专利技术提供的消息处理的方法

[0034]上述专利技术中的一个实施例具有如下优点或有益效果:在接收到生产者发送的待处理消息时,确定待处理消息对应的存储标识,以将待处理消息存储到存储标识对应的存储集合中,当监测到存储集合中存在待处理消息时,将存储集合中的待处理消息发送到消息队列中,以使得消费者从消息队列中获取待处理消息进行消费

本专利技术实施例的方法能够将待处理消息存储到对应的存储集合中,并将存储集合中的待处理消息实时发送到消息队列中,实现高并发场景下消息的及时处理,保证系统的高可用性,提升消息处理效率,且具有更好的横向可扩展性

[0035]上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明

附图说明
[0036]附图用于更好地理解本专利技术,不构成对本专利技术的不当限定

其中:
[0037]图1是根据本专利技术实施例的一种消息处理的方法的主要流程的示意图;
[0038]图2是根据本专利技术实施例的另一种消息处理的方法的主要流程的示意图;
[0039]图3是根据本专利技术实施例的一致性哈希算法形成的环形数字空间的示意图;
[0040]图4是本专利技术实施例的一种消息处理的方法的架构示意图;
[0041]图5是根据本专利技术实施例的消息处理的装置的主要模块的示意图;
[0042]图6是本专利技术实施例可以应用于其中的示例性系统架构图;
[0043]图7是适于用来实现本专利技术实施例的终端设备或服务器的计算机系统的结构示意图

具体实施方式
[0044]以下结合附图对本专利技术的示范性实施例做出说明,其中包括本专利技术实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的

因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本专利技术的范围和精神

同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种消息处理的方法,其特征在于,包括:响应于接收到生产者发送的待处理消息,确定与所述待处理消息对应的存储标识;将所述待处理消息存储到与所述存储标识对应的存储集合中;响应于监测到所述存储集合中存在待处理消息,将所述存储集合中的待处理消息发送至消息队列中,以使得消费者消费所述消息队列中的所述待处理消息
。2.
根据权利要求1所述的方法,其特征在于,所述待处理消息为核销完成的订单信息,所述订单信息包括订单标识,确定与所述待处理消息对应的存储标识,包括:获取所有存储集合中每个存储集合的存储标识,根据每个存储集合的存储标识和预设规则确定每个存储集合对应的第一指标值;获取所述生产者根据所述待处理消息的订单标识和预设规则确定的与所述待处理消息对应的第二指标值;根据所述第二指标值和各个第一指标值的大小确定与所述第二指标值对应的第一指标值,以确定与所述待处理消息对应的存储标识
。3.
根据权利要求2所述的方法,其特征在于,所述预设规则为一致性哈希算法,所述第一指标值和所述第二指标值分布在所述一致性哈希算法形成的环形数字空间中,根据所述第二指标值和各个第一指标值的大小确定与所述第二指标值对应的第一指标值,包括:从所述第二指标值的位置开始,按照顺序针查询所述环形数据空间中与所述第二指标值距离最近的第一指标值;将所述与所述第二指标值距离最近的第一指标值作为与所述第二指标值对应的第一指标值
。4.
根据权利要求2所述的方法,其特征在于,所述订单信息包括核销完成时间戳,将所述待处理消息存储到与所述存储标识对应的存储集合中,包括:以所述核销完成时间戳作为指标值;按照指标值从小到大的顺序将所述待处理消息存储到所述存储集合中,以确定所述存储集合中各个待处理消息的排列...

【专利技术属性】
技术研发人员:杨丽种思涵吕一凡刘凤智
申请(专利权)人:北京京东拓先科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1