一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

秒杀活动处理方法及装置与流程

2023-02-04 14:48:58 来源:中国专利 TAG:


1.本技术涉及金融数据处理技术领域,特别涉及秒杀活动处理方法及装置。


背景技术:

2.在电商平台交易的过程中经常会发布一些“秒杀促销”类活动,目前这种“秒杀促销”类活动数据采用分布式数据库处理,但是,对于一些以关系型数据库为主体的公司会面临存入数据量过大、数据库瘫痪的风险。
3.应该注意,上面对技术背景的介绍只是为了方便对本技术的技术方案进行清楚、完整的说明,并方便本领域技术人员的理解而阐述的。不能仅仅因为这些方案在本技术的背景技术部分进行了阐述而认为上述技术方案为本领域技术人员所公知。


技术实现要素:

4.为了解决上述问题中的一个或多个,本技术实施例提供一种秒杀活动处理方法及装置,通过对目前关系型数据库的改造,在服务器内存中加入临时表的办法,将高速存储和低速存储通过异步存储的方式进行协调,节约了成本,使关系型数据库也能适用于高并发数据量的场景。
5.根据本技术实施例的第一方面,提供了一种秒杀活动处理方法,其中,方法包括:
6.在交易系统的内存中构建秒杀活动的临时表;
7.当用户提出交易请求时,将产生交易的记录存储于临时表中,并随机生成交易请求随机数且将交易请求随机数返回用户使用的客户端;
8.当交易成功的情况下,将生成交易的订单数据与交易成功的随机数存储于临时表。
9.由此,通过对目前关系型数据库的改造,在服务器内存中加入临时表的办法,将高速存储和低速存储通过异步存储的方式进行协调,节约了成本,使关系型数据库也能适用于高并发数据量的场景。
10.根据本技术实施例的第二方面,其中,该方法还包括:
11.通过消息队列向数据库传输临时表中的交易成功的数据。
12.由此,在异步存储时,避免数据同步难回滚的问题发生。
13.根据本技术实施例的第三方面,其中,该方法还包括:
14.在秒杀活动结束后,将临时表中交易失败的数据加入交易失败消息列队中,并同步到数据库中。
15.由此,为了放缓数据量,采取先异步存储成功交易数据,再更新数据量大的失败交易数据,保证了数据的可靠性,也为数据库出现其他未知错误提供修改空间。
16.根据本技术实施例的第四方面,其中,该方法还包括:
17.在接收到客户端发送的付款信息时,将来自客户端的交易请求随机数与记录的随机数进行比较;
18.在记录的随机数与交易请求随机数一致时,确定交易成功。
19.由此,为了防止恶意刷单,加入令牌机制来确定最终交易成功记录。
20.根据本技术实施例的第五方面,其中,该方法还包括:
21.每间隔设定的遍历时间对临时表进行遍历,并将交易成功的数据写入消息列队。
22.由此,能够提高处理效率,提高数据的准确性,避免遗漏。
23.根据本技术实施例的第六方面,其中,该方法还包括:
24.在临时表中交易失败的数据同步到数据库之后,删除临时表并释放内存。
25.由此,能够释放内存,缓解数据库的存储压力。
26.根据本技术实施例的第七方面,其中,该方法还包括:
27.临时表在服务器内存中建立;
28.数据库为关系型数据库。
29.根据本技术实施例的第八方面,提供一种秒杀活动处理装置,其中,装置包括:
30.构建模块,在交易系统的内存中构建秒杀活动的临时表,
31.处理模块,当用户提出交易请求时,将产生交易的记录存储于临时表中,并随机生成交易请求随机数且将交易请求随机数返回用户使用的客户端,
32.当交易成功的情况下,将生成交易的订单数据与交易成功的随机数存储于临时表。
33.根据本技术实施例的第九方面,其中,该装置还包括:
34.传输模块,通过消息队列向数据库传输临时表中的交易成功的数据。
35.根据本技术实施例的第十方面,其中,该装置还包括:
36.处理模块,在秒杀活动结束后,将临时表中交易失败的数据加入交易失败消息列队中,并同步到数据库中。
37.根据本技术实施例的第十一方面,其中,该装置还包括:
38.处理模块,在接收到客户端发送的付款信息时,将来自客户端的交易请求随机数与记录的随机数进行比较;
39.在记录的随机数与交易请求随机数一致时,确定交易成功。
40.根据本技术实施例的第十二方面,其中,该装置还包括:
41.传输模块,每间隔设定的遍历时间对临时表进行遍历,并将交易成功的数据写入消息列队。
42.根据本技术实施例的第十三方面,其中,该装置还包括:
43.处理模块,在临时表中交易失败的数据同步到数据库之后,删除临时表并释放内存。
44.根据本技术实施例的第十四方面,其中,该装置还包括:
45.临时表在服务器内存中建立;数据库为关系型数据库。
46.根据本技术实施例的第十五方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并能够在处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现本技术实施例的第一方面至第七方面中的任一方面所述的秒杀活动处理方法。
47.根据本技术实施例的第十六方面,提供一种计算机可读的存储介质,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现本技术实施例的第一方面至第七
方面中的任一方面所述的秒杀活动处理方法。
48.本技术实施例的有益效果之一在于:
49.通过对目前关系型数据库的改造,在服务器内存中加入临时表的办法,将高速存储和低速存储通过异步存储的方式进行协调,节约了成本,使关系型数据库也能适用于高并发数据量的场景。
50.参照后文的说明和附图,详细公开了本技术的特定实施方式,指明了本技术的原理可以被采用的方式。应该理解,本技术的实施方式在范围上并不因而受到限制。在所附权利要求的精神和条款的范围内,本技术的实施方式包括许多改变、修改和等同。
51.针对一种实施方式描述以及示出的特征信息可以以相同或类似的方式在一个或更多个其它实施方式中使用,与其它实施方式中的特征信息相组合,或替代其它实施方式中的特征信息。
52.应该强调,术语“包括/包含”在本文使用时指特征信息、整件、步骤或组件的存在,但并不排除一个或更多个其它特征信息、整件、步骤或组件的存在或附加。
附图说明
53.为了更清楚地说明本技术实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
54.图1是本技术实施例的秒杀活动处理方法的一示意图;
55.图2是本技术实施例的秒杀活动处理方法的另一示意图;
56.图3是本技术实施例的秒杀活动数据存储的一示意图;
57.图4是本技术实施例的秒杀活动处理方法的一实例示意图;
58.图5为本技术实施例的秒杀活动处理装置的一构成图。
具体实施方式
59.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
60.实施例1
61.本技术实施例1提供了一种秒杀活动处理方法,图1是本技术实施例的秒杀活动处理方法的一示意图,如图1所示,该方法包括:
62.步骤100:在交易系统的内存中构建秒杀活动的临时表;
63.步骤200:当用户提出交易请求时,将产生交易的记录存储于临时表中,并随机生成交易请求随机数且将交易请求随机数返回用户使用的客户端;
64.步骤300:当交易成功的情况下,将生成交易的订单数据与交易成功的随机数存储于临时表。
65.由此,通过对目前关系型数据库的改造,在服务器内存中加入临时表的办法,将高
速存储和低速存储通过异步存储的方式进行协调,节约了成本,使关系型数据库也能适用于高并发数据量的场景。
66.图2是本技术实施例的秒杀活动处理方法的另一示意图,如图2所示,在一些实施例中,该方法除了步骤100-300,还包括:
67.步骤400:通过消息队列向数据库传输临时表中的交易成功的数据。
68.由此,在异步存储时,避免数据同步难回滚的问题发生。
69.步骤500:在秒杀活动结束后,将临时表中交易失败的数据加入交易失败消息列队中,并同步到数据库中。
70.由此,为了放缓数据量,采取先异步存储成功交易数据,再更新数据量大的失败交易数据,保证了数据的可靠性,也为数据库出现其他未知错误提供修改空间。
71.下面对上述方法中的各个步骤进行具体的说明。
72.在步骤100中,在交易系统的内存中构建秒杀活动的临时表;
73.在本实施例中,在进行“秒杀活动”前在服务器内存中建立的临时表,例如,临时表中包括字段:订单号、交易时间、交易价格、请求随机数、交易成功随机数等信息。
74.在步骤200中,当用户提出交易请求时,将产生交易的记录存储于临时表中,并随机生成交易请求随机数且将交易请求随机数返回用户使用的客户端;
75.在本实施例中,秒杀活动开始时,每一笔订单在生成时,会携带一个交易请求随机数,也就是随机生成的令牌口令,并将该条交易记录存在临时表中。
76.在步骤300中,当交易成功的情况下,将生成交易的订单数据与交易成功的随机数存储于临时表。
77.图3是本技术实施例的秒杀活动数据存储的一示意图,如图3所示,在一些实施例中,该步骤300,还包括:
78.在接收到客户端发送的付款信息时,将来自客户端的交易请求随机数与记录的随机数进行比较;
79.步骤301:判断在记录的随机数与交易请求随机数是否一致;
80.步骤302:在记录的随机数与交易请求随机数一致时,确定交易成功。
81.步骤303:在记录的随机数与交易请求随机数不一致时,确定交易失败。
82.由此,为了防止恶意刷单,加入令牌机制来确定最终交易成功记录。
83.接下来,在步骤400中,通过消息队列向数据库传输临时表中的交易成功的数据。
84.在本实施例中,每间隔设定的遍历时间对临时表进行遍历,并将交易成功的数据写入消息列队。
85.例如,创建数据传输服务,设定的遍历数据临时表的间隔时间,服务开启后逐行对临时表中已有的数据按照顺序进行遍历,使用与单元格对应的检查规则进行判断,当发现符合规则的条件时,将单元格对应的数据写入消息队列。其中,检查规则可以为,设置交易flag字段,当字段为交易成功所写入的t时,将对应交易数据写入mq队列。
86.在本实施例中,消息传输以mq为例,websphere mq是一种中间件产品,是将不同的计算环境连接起来的中间软件,介于应用与操作系统之间的系统,是相关应用基准平台,它实现了一个消息队列框架。但是不限于此,也可以使用其他消息传输中间件产品。
87.由此,能够提高处理效率,提高数据的准确性,避免遗漏。
88.在本实施例中,在临时表中交易失败的数据同步到数据库之后,删除临时表并释放内存。
89.由此,能够释放内存,缓解数据库的存储压力。
90.在本实施例中,临时表在服务器内存中建立;数据库为关系型数据库。
91.图4是本技术实施例的秒杀活动处理方法的一实例示意图,如图4所示,该方法包括:
92.步骤401:在进行“秒杀活动”前在服务器内存中建立的临时表temp。
93.步骤402:用户在提出交易请求时,临时表temp中会有一条交易记录,交易记录中记录有随机数,同时会把记录的随机数发给用户,作为用户的一个交易请求随机数(令牌口令),当用户付款,用户的交易请求随机数又会跟随交易订单记录一起返到临时表temp中,此时会进行随机数的比对,也就是将当前接收到的用户交易请求随机数和之前记录的随机数进行比对,如果两个随机数对应上才算这条交易生效成功。
94.步骤403:遍历服务会每隔一段时间遍历一次临时表temp,将交易成功的数据加入到成功记录mq队列中,并通过该队列同步到关系型数据库中。
95.步骤404:在秒杀活动结束后,将交易失败数据加入到失败记录mq队列中,再同步到关系数据库中。
96.步骤405:在交易失败数据同步完成后,删除临时表,并释放内存空间。
97.根据本技术实施例,通过对目前关系型数据库的改造,在服务器内存中加入临时表的办法,将高速存储和低速存储通过异步存储的方式进行协调,节约了成本,使关系型数据库也能适用于高并发数据量的场景。
98.实施例2
99.本技术实施例还提供了一种秒杀活动处理装置,其对应于实施例1所述的秒杀活动处理方法,因此该装置的实施可以参见实施例1所述的秒杀活动处理方法的实施,重复之处不再赘述。
100.图5为本技术实施例的秒杀活动处理装置的一构成图,如图5所示,秒杀活动处理装置10包括构建模块11、处理模块12,其中,
101.构建模块11,在交易系统的内存中构建秒杀活动的临时表,
102.处理模块12,当用户提出交易请求时,将产生交易的记录存储于临时表中,并随机生成交易请求随机数且将交易请求随机数返回用户使用的客户端,
103.当交易成功的情况下,将生成交易的订单数据与交易成功的随机数存储于临时表。
104.在一些实施例中,传输模块13,通过消息队列向数据库传输临时表中的交易成功的数据。
105.在一些实施例中,处理模块12,在秒杀活动结束后,将临时表中交易失败的数据加入交易失败消息列队中,并同步到数据库中。
106.在一些实施例中,处理模块12,在接收到客户端发送的付款信息时,将来自客户端的交易请求随机数与记录的随机数进行比较;
107.在记录的随机数与交易请求随机数一致时,确定交易成功。
108.在一些实施例中,传输模块13,每间隔设定的遍历时间对临时表进行遍历,并将交
易成功的数据写入消息列队。
109.在一些实施例中,处理模块12,在临时表中交易失败的数据同步到数据库之后,删除临时表并释放内存。
110.在一些实施例中,临时表在服务器内存中建立;数据库为关系型数据库。
111.本技术实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并能够在处理器上运行的计算机程序,其中,处理器执行计算机程序时实现秒杀活动处理方法。
112.本技术实施例也提供一种计算机可读存储介质,其上存储有计算机程序,其中,计算机程序被处理器执行时实现秒杀活动处理方法。
113.虽然本技术提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
114.本领域技术人员应理解,本说明书的实施例可提供为方法、装置(系统)或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
115.本技术是参照根据本技术实施例的方法、装置(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
116.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
117.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
118.本技术各个实施例之间相同或相似的部分可以互相参见。在本技术中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。术语“上”、“下”等指示的方位
或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本技术和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本技术的限制。除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本技术中的具体含义。需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。本技术并不局限于任何单一的方面,也不局限于任何单一的实施例,也不局限于这些方面和/或实施例的任意组合和/或置换。而且,可以单独使用本技术的每个方面和/或实施例或者与一个或更多其他方面和/或其实施例结合使用。
119.最后应说明的是:以上各实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述各实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的范围,其均应涵盖在本技术的权利要求和说明书的范围当中。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献