【技术实现步骤摘要】
一种消息推送处理方法、装置、电子设备及存储介质
[0001]本专利技术涉及计算机
,尤其涉及一种消息推送处理方法、装置、电子设备及存储介质。
技术介绍
[0002]相关技术中的消息总线的消息传输方式,仅能解决消息不丢失、不重复的问题(消息幂等性)。但是,解决消息幂等性的设计中,无法保证分布式系统中消息的时序性。对于发布者发布的消息而言,有些消息可能是与业务逻辑发生的时间顺序相关的。对于消息的订阅方而言,当收到消息的时间顺序与业务发生时间顺序一致时,才可以有效的处理消息,否则容易发生业务逻辑异常。
[0003]由于当前互联网大并发场景下,分布式系统、异步处理设计、网络延迟、业务逻辑等问题,消息很难保证时序性。当消息的时序产生异常时,容易导致消息对应的事件执行异常,通常需要人工介入处理数据,手工修复。
技术实现思路
[0004]本专利技术实施例提供一种消息推送处理方法、装置、电子设备及存储介质,以解决现有的消息推送处理方式容易导致消息时序异常,进而导致事件执行异常的问题。
[0005]为了解 ...
【技术保护点】
【技术特征摘要】
1.一种消息推送处理方法,其特征在于,应用于消息接收方设备,所述方法包括:响应于接收到消息,获取所述消息携带的事件版本号,并与本地记录的第一参考版本号比较,所述消息携带的事件版本号由消息发送方设备根据消息对应事件的触发顺序确定得到;如果所述消息携带的事件版本号与所述第一参考版本号之间的差值为指定数值,确认所述消息为当前的最新事件的消息,并执行所述消息对应的事件;如果所述事件版本号与所述第一参考版本号之间的差值不为指定数值,确认所述消息不是当前的最新事件的消息,并记录所述消息,直至接收到当前最新事件的消息,按照所记录的各个消息的时序性依次执行各个消息对应的事件;其中,每个消息的时序性由消息携带的事件版本号确定得到。2.根据权利要求1所述的方法,其特征在于,所述方法,还包括:响应于当前最新事件执行完成,将所述当前最新事件对应消息的事件版本号作为第一参考版本号更新至本地。3.根据权利要求1所述的方法,其特征在于,所述消息发送方设备针对不同维度分别进行事件版本号的维护,一条消息携带一个实时版本号,且有关联关系的多个消息携带同一个版本号,同一维度下的实时版本号为连续递增的数字,所述维度包括用户维度、业务维度中的至少一种;所述消息发送方设备包括分布式系统。4.根据权利要求3所述的方法,其特征在于,所述消息发送方设备在接收到事件触发请求的情况下,根据所述事件触发请求对应的目标维度,获取本地针对所述目标维度的第二参考版本号,并在所述第二参考版本号的基础上增加指定数值,得到针对所述事件触发请求的事件版本号,以在发送针对所述事件触发请求的消息至消息接收方设备时,携带所述事件版本号;其中,所述第二参考版本号为所述消息发送方设备针对所述目标维度下的前一次成功发送消息的事件触发请求分配的事件版本号。5.根据权利要求3所述的方法,其特征在于,所述响应于接收到消息,获取所述消息携带的事件版本号,并与本地记录的第一参考版本号比较的步骤,包括:响应于接收到消息,获取所述消息携带的事件版本号,以及所述消息对应的目标维度,并与本地记录的所述目标维度下的第一参考版本号进行比较。6.一种消息推送处理方法,其特征在于,应用于消息发送方设备,所述方法包括:响应于事件触发请求,获取本地记录的第二参考版本号,并在所述第二参考版本号的基础上增加指定数值,得到针对所述事件触发请求的事件版本号;发送针对所述事件触发请求的消息至消息接收方设备,并在所述消息中携带所述事件版本号;其中,所述第二参考版本号为所述消息发送方设备针对前一次成功发送消息的事件触发请求分配的事件版本号。7.根据权利要求6所述的方法,其特征在于,还包括:响应于所述消息发送成功...
【专利技术属性】
技术研发人员:祝海龙,
申请(专利权)人:北京城市网邻信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。