【技术实现步骤摘要】
事件处理方法、服务器及计算机存储介质
本专利技术涉及数据处理
,尤其涉及一种事件处理方法、服务器及计算机存储介质。
技术介绍
在合同中台系统中,用户的每次操作请求,服务器都会转化成事件形式进行处理。响应于用户的不同操作请求,服务器对不同事件进行处理时,将会涉及到数据的查询、修改或者状态变更等。由于客户端快速操作或者网络通信响应延迟等原因,可能导致服务器接收到多个相同的并发事件,由于服务器的高并发性,服务器将会对上述多个相同的并发事件重复处理,从而导致对实体数据的重复修改,针对交易系统、支付系统等后果尤其严重。可见,现有技术中存在对同一实体的并发事件进行重复处理的问题。
技术实现思路
本专利技术实施例的目的在于提供一种事件处理方法、服务器及计算机存储介质,以实现在同一时刻仅单线程对同一实体进行处理。具体技术方案如下:在本专利技术实施的第一方面,首先提供了一种事件处理方法,包括:在同时接收到N个事件的情况下,生成所述N个事件的序列号,所述N个事件的序列号相同;在所述N个事件中包括实体标识 ...
【技术保护点】
1.一种事件处理方法,其特征在于,所述方法包括以下步骤:/n在同时接收到N个事件的情况下,生成所述N个事件的序列号,所述N个事件的序列号相同;/n在所述N个事件中包括实体标识相同的M个事件的情况下,向MySQL数据表中插入目标事件对应的MySQL记录;/n在所述目标事件的MySQL记录插入成功的情况下,对所述目标事件进行处理,并过滤M-1个事件;/n其中,所述目标事件为所述M个事件中的一个事件,在向MySQL数据表中插入目标事件对应的MySQL记录时,所述M-1个事件处于等待插入记录的状态,N为大于1的整数;M为大于1,且小于或等于N的整数。/n
【技术特征摘要】
1.一种事件处理方法,其特征在于,所述方法包括以下步骤:
在同时接收到N个事件的情况下,生成所述N个事件的序列号,所述N个事件的序列号相同;
在所述N个事件中包括实体标识相同的M个事件的情况下,向MySQL数据表中插入目标事件对应的MySQL记录;
在所述目标事件的MySQL记录插入成功的情况下,对所述目标事件进行处理,并过滤M-1个事件;
其中,所述目标事件为所述M个事件中的一个事件,在向MySQL数据表中插入目标事件对应的MySQL记录时,所述M-1个事件处于等待插入记录的状态,N为大于1的整数;M为大于1,且小于或等于N的整数。
2.根据权利要求1所述的方法,其特征在于,所述在所述目标事件的MySQL记录插入成功的情况下,对所述目标事件进行处理,包括:
在所述目标事件的MySQL记录插入成功的情况下,判断是否存在正在处理的第一事件,所述第一事件的实体标识与所述目标事件的实体标识相同;
若存在所述正在处理的第一事件,在所述第一事件处理完成的情况下,对所述目标事件进行处理。
3.根据权利要求2所述的方法,其特征在于,所述在所述第一事件处理完成的情况下,对所述目标事件进行处理,包括:
在所述第一事件处理完成的情况下,根据所述第一事件的处理结果,执行所述目标事件或者过滤所述目标事件。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第一事件的处理结果,执行所述目标事件或者过滤所述目标事件,包括:
根据所述第一事件的处理结果,向第三方服务器发送所述目标事件对应的请求,以调用第三方接口执行所述目标事件,或者过滤所述目标事件。
5.根据权利要求1所述的方法,其特征在于,所述过滤M-1个事件包括:
对M-1个事件分别生成事件处理失败的处理结果;
将所述处理结果对应发送至分别触发所述M-1个事件的客户端。
6.一种服务器,其特征在于,所述服务器包括:
生成模块,用于在同时接收到N个事件的情况下,生成所述N个事件的序列号,所述N个事件的序列号相同;
插入模块...
【专利技术属性】
技术研发人员:艾国信,宋超,
申请(专利权)人:北京奇艺世纪科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。