一种网购数据处理方法及装置与流程

文档序号:11545776阅读:335来源:国知局
一种网购数据处理方法及装置与流程

本发明涉及电子交易技术领域,具体涉及一种网购数据处理方法及装置。



背景技术:

所谓秒杀,就是网络卖家发布一些超低价格的商品,所有买家在同一时间网上抢购的一种销售方式。通俗一点讲就是网络商家为促销等目的组织的网上限时抢购活动。由于商品价格低廉,往往一上架就被抢购一空,有时只用一秒钟。2011年以来,在淘宝等大型购买网站中,秒杀店的发展可谓迅猛。

由于参与秒杀活动的商品的秒杀价与平时售价相比十分廉价,因此往往会引发消费者的哄抢。大量消费者会在极短的时间内向服务器发出大量购买请求,这就使服务器会在短时间内接受到大量的流量。秒杀商品活动开始的一瞬间会有大量的流量涌入,几倍、甚至于十几倍的流量对系统的冲击不可谓不大。如果没有足够的应对措施,很容易导致服务器崩溃。

因此如何处理短时间内涌入的大量流量,避免服务器崩溃,成为了本领域技术人员亟须解决的问题。



技术实现要素:

有鉴于此,本发明的目的在于提供一种网购数据处理方法,避免同时将所有购买请求发送至服务器,从而避免服务器因短时间内涌入的大量流量而崩溃。

为实现上述目的,本发明提供如下技术方案:

一种网购数据处理方法,包括:

设置暂存队列大小;

接收购买请求;

将购买请求按接收到的先后顺序在暂存队列中储存为第一购买请求;

检测服务器使用率;

若服务器使用率低于标准使用率,则按照接收到购买请求的先后顺序发送标准数量的第一购买请求至服务器。

优选地,在设置所示暂存队列大小之前还包括:

调用服务器中商品出售总数。

优选地,还包括:

接收第一消费者发送的查询请求,若消费者发送的购买请求储存在暂存队列中,则此类消费者为第一消费者;

调用服务器中剩余商品数;

计算第一购买请求的排位信息;

将剩余商品数及排位信息发送至第一消费者。

优选地,还包括:

若购买请求未储存在暂存队列中,则生成购买失败信息;

向第二消费者发送购买失败信息,若消费者发送的购买请求未储存在暂存队列中,则此类消费者为第二消费者;

接收服务器发送的处理状态信息,处理状态信息为处理器基于接收的第一购买请求生成的;

将处理状态信息发送至第三消费者,若第一消费者对应的第一购买请求被发送至服务器,此类第一消费者为第三消费者。

优选地,还包括:

记录同一地址标准时间内发送的购买请求数;

若请求数超出警戒请求数,则拒绝接收地址发出的所有信息,包括购买请求、查询请求。

一种网购数据处理装置,包括:

设置模块,用于设置暂存队列大小;

接收模块,用于接收购买请求;

暂存模块,用于将购买请求按接收到的先后顺序在暂存队列中储存为第一购买请求;

检测模块,用于检测服务器使用率;

第一传输模块,用于在服务器使用率低于标准使用率时,按照接收到购买请求的先后顺序发送标准数量的第一购买请求至服务器。

优选地,还包括第三传输模块,其中:

第三传输模块在设置所示暂存队列大小之前用于调用服务器中商品出售总数。

优选地,还包括计算模块及第二传输模块,其中:

接收模块还用于接收第一消费者发送的查询请求,若消费者发送的购买请求储存在暂存队列中,则此类消费者为第一消费者;

第三传输模块还用于调用服务器中剩余商品数;

计算模块用于计算第一购买请求的排位信息;

第二传输模块用于将剩余商品数及排位信息发送至第一消费者。

优选地,还包括生成模块,其中:

生成模块用于在购买请求未储存在暂存队列时,生成购买失败信息;

第二传输模块还用于向第二消费者发送购买失败信息,若消费者发送的购买请求未储存在暂存队列中,则此类消费者为第二消费者;

第三传输模块还用于接收服务器发送的处理状态信息,处理状态信息为处理器基于接收的第一购买请求生成的;

第二传输模块还用于将处理状态信息发送至第三消费者,若第一消费者对应的第一购买请求被发送至服务器,此类第一消费者为第三消费者。

优选地,还包括计数模块,其中:

计数模块用于记录同一地址标准时间内发送的购买请求数;

若请求数超出警戒请求数,则接收模块拒绝接收地址发出的所有信息,包括购买请求、查询请求。

从上述技术方案可以看出,本发明提供一种网购数据处理方法,当接收到消费者的购买请求后,并不直接由服务器处理这些购买请求,而是暂存在暂存队列中,然后对服务器进行检测,当检测到服务器使用率低于标准使用率时,再将与此标准使用率对应数量的购买请求发送至服务器。避免了服务器的超负荷运转,进而避免了服务器的崩溃。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1为本发明公开的一种网购数据处理方法的实施例1的流程图;

图2为本发明公开的一种网购数据处理方法的实施例2的流程图;

图3为实施例2的方法实现消费者反馈功能的流程图;

图4为实施例2的方法应对恶意抢购的流程图;

图5为本发明公开的一种网购数据处理装置的实施例3的具体结构示意图;

图6为本发明公开的一种网购数据处理装置的实施例4的具体结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

如图1所示,为本发明公开的一种网购数据处理方法的实施例1的流程图:

s101、设置暂存队列大小;

用于秒杀的商品数量一般较少,能够生效的购买请求较少。因此,在接收消费者发出的购买请求时,设置模块对暂存队列的大小进行设置,可避免暂存过多的购买请求,可有效减少对硬件的要求,降低成本。

s102、接收购买请求;

接收模块接消费者发送的购买请求。

s103、将购买请求按接收到的先后顺序在暂存队列中储存为第一购买请求;

接收到消费者请求后,暂存模块以接收到购买请求的先后顺序将这些购买请求暂存在暂存队列中,这些被暂存的购买请求即为第一购买请求。可采用如下方式记录第一购买请求的先后顺序:(1)将接收购买请求的时间一起暂存;(2)在接收到购买请求时对这些购买请求编号,暂存时将编号一起暂存;(3)为暂存模块中的存储空间分配顺序标志,先接收的购买请求暂存在顺序靠前的空间中。

s104、检测服务器使用率;

检测模块检测服务器的使用率,具体步骤可为:检测模块发送检测指令至服务器,服务器反馈使用率信息给检测模块。

s105、若服务器使用率低于标准使用率,则按照接收到购买请求的先后顺序发送标准数量的第一购买请求至服务器;

检测模块可将接收到服务器的使用率与标准使用率相比较,标准使用率可内置在检测模块内部。当服务器使用率低于标准使用率时,即表示服务器有能力处理更多的第一购买请求,此时,第一传输模块按照接收到购买请求的先后顺序调用与标准使用率对应的标准数量的第一购买请求发送至服务器。标准使用率并不为一个固定值,可以是多个值,例如20%、40%、60%及80%,而此时与其对应的标准数量也是一系列的值,如80、60、40及20。

综上所述,通过对暂存队列大小的设置,可避免暂存大量无法生效的购买请求,降低对暂存模块硬件的要求。将购买请求保留其接收时的先后顺序暂存,保证了先发出购买请求的消费者可以优先购买到商品,保证了秒杀的公平性。通过检测服务器的使用率,根据服务器的使用率发送相应数量的购买请求给服务器处理,在保证了服务器工作效率的同时也避免了服务器因短时间内大量涌入的流量而崩溃,提高了服务器的稳定性。

如图2所示,为本发明公开的一种网购数据处理方法的实施例2的流程图:

s201、调用服务器中商品出售总数;

在设置暂存队列大小之前,第三传输模块调用服务器中商品的出售总数。商品的出售总数可以为后续设置暂存队列大小提供依据。

s202、设置暂存队列大小;

用于秒杀的商品数量一般较少,能够生效的购买请求较少。因此,在接收消费者发出的购买请求时,设置模块对暂存队列的大小进行设置,可避免暂存过多的购买请求,可有效减少对硬件的要求,降低成本。调用商品的出售总数之后,暂存队列的大小可比商品的出售总数略大,如出售的商品为100个鼠标,暂存队列可定为可暂存120条第一购买请求。因为部分消费者也许会取消订单,因此将暂存队列定得比商品的总数略大,可保证所有商品都能出售。

s203、接收购买请求;

接收模块接消费者发送的购买请求。

s204、将购买请求按接收到的先后顺序在暂存队列中储存为第一购买请求;

接收到消费者请求后,暂存模块以接收到购买请求的先后顺序将这些购买请求暂存在暂存队列中,这些被暂存的购买请求即为第一购买请求。可采用如下方式记录第一购买请求的先后顺序:(1)将接收购买请求的时间一起暂存(2)在接收到购买请求时对这些购买请求编号,暂存时将编号一起暂存(3)为暂存模块中的存储空间分配顺序标志,先接收的购买请求暂存在顺序靠前的空间中。

s205、检测服务器使用率;

检测模块检测服务器的使用率,具体步骤可为:检测模块发送检测指令至服务器,服务器反馈使用率信息给检测模块。

s206、若服务器使用率低于标准使用率,则按照接收到购买请求的先后顺序发送标准数量的第一购买请求至服务器;

检测模块可将接收到服务器的使用率与标准使用率相比较,标准使用率可内置在检测模块内部。当服务器使用率低于标准使用率时,即表示服务器有能力处理更多的第一购买请求,此时,第一传输模块按照接收到购买请求的先后顺序调用与标准使用率对应的标准数量的第一购买请求发送至服务器。标准使用率并不为一个固定值,可以是多个值,例如20%、40%、60%及80%,而此时与其对应的标准数量也是一系列的值,如80、60、40及20。

综上所述,调用出售的商品的总数,可为设置暂存队列的大小提供依据,通过对暂存队列大小的设置,可避免暂存大量无法生效的购买请求,降低对暂存模块硬件的要求。将购买请求保留其接收时的先后顺序暂存,保证了先发出购买请求的消费者可以优先购买到商品,保证了秒杀的公平性。通过检测服务器的使用率,根据服务器的使用率发送相应数量的购买请求给服务器处理,在保证了服务器工作效率的同时也避免了服务器因短时间内大量涌入的流量而崩溃,提高了服务器的稳定性。

为进一步优化本实施例,本方法还包括以下步骤:

s207、接收第一消费者发送的查询请求,若消费者发送的购买请求储存在暂存队列中,则此类消费者为第一消费者;

接收模块接收第一消费者发送的查询请求,第一消费者指的是发送的购买请求储存在暂存队列中的消费者。第一消费者即为可能买到商品的消费者因本网购数据处理方法在处理消费者的购买请求时存在滞后性,因此为第一消费者提供查询服务,可提高消费者的体验感。

s208、调用服务器中剩余商品数;

第三传输模块实时调用服务器中的剩余的尚未售出的商品数量信息。

s209、计算第一购买请求的排位信息;

计算模块计算发出查询请求的第一消费者对应的第一购买请求在暂存模块中的排位信息,若此第一购买请求前还有100条购买请求未发送至服务器,则代表前面还有100位消费者将先于此消费者购买到商品,此时排位信息及为第101位。

s210、将剩余商品数及排位信息发送至第一消费者;

第二传输模块将剩余商品数及排位信息发送至此消费者,消费者接收到信息后即可了解自己是否一定能买到商品。若不一定,则需要有几位在其之前的消费者取消购买,此消费者才能购买到商品。

如图3所示,为实施例2的方法实现消费者反馈功能的流程图:

s301、若购买请求未储存在暂存队列中,则生成购买失败信息;

受暂存队列大小所限,会有大量购买请求不能储存在暂存队列中,生成模块基于这些购买请求生成购买失败信息。

s302、向第二消费者发送购买失败信息,若消费者发送的购买请求未储存在暂存队列中,则此类消费者为第二消费者;

第二传输模块将购买失败信息发送给对应的第二消费者,第二消费者即为购买请求未存储在暂存队列中的消费者。第二消费者得到反馈后,即可知道自己没有秒杀到商品,提高了消费者的体验感。

s303、接收服务器发送的处理状态信息,处理状态信息为处理器基于接收的第一购买请求生成的;

第三传输模块接收服务器发送的处理状态信息,处理状态信息为处理器接收到第一购买请求后生成的信息,如商品的物流信息及订单信息。

s304、将处理状态信息发送至第三消费者,若第一消费者对应的第一购买请求被发送至服务器,此类第一消费者为第三消费者;

第二传输模块将处理状态信息发送至第三消费者,此处的第三消费者指的是第一购买请求已经发送至服务器的那部分第一消费者,即已经成功购买商品的消费者。第三消费者可根据处理状态信息了解到此处购买的具体情况,提升了消费者的体验感。

因秒杀商品较少,部分消费者为了能够成功秒杀,会选择使用非法插件或脚本进行秒杀,非法插件或脚本可在极短时间内发送大量的购买请求,这对其他消费者来说是极不公平的。

如图4所示,为实施例2的方法应对恶意抢购的流程图:

s401、记录同一地址标准时间内发送的购买请求数;

技术模块记录同一地址标准时间内发送的购买请求数。

s402、若请求数超出警戒请求数,则拒绝接收地址发出的所有信息,包括购买请求、查询请求;

当标准时间内的请求数超出警戒请求数时,则可认为这些购买请求为脚本或插件发送的,此时接收模块拒绝接收此地址发出的所有信息,如购买请求及查询请求等。例如上述标准时间设为1秒,相应的警戒请求数可设为5条,人力是无法在一秒内发送5条购买请求的。

如图5所示,为本发明公开的一种网购数据处理装置的实施例3的具体结构示意图:

本装置包括:设置模块501、接收模块502、暂存模块503、检测模块504及第一传输模块505,其中:

设置模块501用于设置暂存队列大小;

接收模块502用于接收购买请求;

暂存模块503用于将购买请求按接收到的先后顺序在暂存队列中储存为第一购买请求;

检测模块504用于检测服务器使用率;

第一传输模块505用于在服务器使用率低于标准使用率时,按照接收到购买请求的先后顺序发送标准数量的第一购买请求至服务器506。

本实施例的工作原理与实施例1相同,在此不再赘述。

如图6所示,为本发明公开的一种网购数据处理装置的实施例4的具体结构示意图:

本装置包括:设置模块601、接收模块602、暂存模块603、检测模块604、第一传输模块605及第三传输模块607,其中:

第三传输模块607在设置所示暂存队列大小之前用于调用服务器611中商品出售总数;

设置模块601用于设置暂存队列大小;

接收模块602用于接收购买请求;

暂存模块603用于将购买请求按接收到的先后顺序在暂存队列中储存为第一购买请求;

检测模块604用于检测服务器使用率;

第一传输模块605用于在服务器使用率低于标准使用率时,按照接收到购买请求的先后顺序发送标准数量的第一购买请求至服务器611。

为进一步优化本方案,本装置还包括计算模块608及第二传输模块606,其中:

接收模块602还用于接收第一消费者发送的查询请求,若消费者发送的购买请求储存在暂存队列中,则此类消费者为第一消费者;

第三传输模块607还用于调用服务器611中剩余商品数;

计算模块608用于计算第一购买请求的排位信息;

第二传输模块606用于将剩余商品数及排位信息发送至第一消费者。

为进一步优化本方案,本装置还包括生成模块609,其中:

生成模块609用于在购买请求未储存在暂存队列时,生成购买失败信息;

第二传输模块606还用于向第二消费者发送购买失败信息,若消费者发送的购买请求未储存在暂存队列中,则此类消费者为第二消费者;

第三传输模块607还用于接收服务器611发送的处理状态信息,处理状态信息为处理器基于接收的第一购买请求生成的;

第二传输模块606还用于将处理状态信息发送至第三消费者,若第一消费者对应的第一购买请求被发送至服务器611,此类第一消费者为第三消费者。

为进一步优化本方案,本装置还包括计数模块610,其中:

计数模块610用于记录同一地址标准时间内发送的购买请求数;

若请求数超出警戒请求数,则接收模块602拒绝接收地址发出的所有信息,包括购买请求、查询请求。

本实施例的工作原理与实施例2相同,在此不再赘述。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1