CN105160572A - 控制订单生成的装置、方法及秒杀*** - Google Patents
控制订单生成的装置、方法及秒杀*** Download PDFInfo
- Publication number
- CN105160572A CN105160572A CN201510642366.3A CN201510642366A CN105160572A CN 105160572 A CN105160572 A CN 105160572A CN 201510642366 A CN201510642366 A CN 201510642366A CN 105160572 A CN105160572 A CN 105160572A
- Authority
- CN
- China
- Prior art keywords
- request
- killing
- kills
- kill
- order
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种控制订单生成的装置,包括:秒杀信息获取模块,用于当接收到前端服务器所转发的客户端所发送的若干秒杀请求时,获取秒杀请求中的相关信息,所述相关信息至少包括用户信息、秒杀商品信息以及客户端IP地址;秒杀请求确定模块,用于从所述若干秒杀请求中随机和/或分时段选择得到相应的可生成秒杀订单的秒杀请求;秒杀订单生成模块,用于根据所确定的秒杀请求中的所述相关信息,生成相应的秒杀订单。本发明还公开了一种控制订单生成的方法及一种秒杀***。通过本发明可对恶意刷单行为进行防范,从而恶意刷单行为对电商平台的影响,进而可相对提高电商平台***的性能,并提升用户购物体验。
Description
技术领域
本发明涉及电子商务领域,尤其涉及控制订单生成的装置、方法及秒杀***。
背景技术
随着移动终端及电子商务技术的发展,越来越多的用户使用移动终端或计算机进行网上购物、购买火车票等,通常情况下,现有电商平台都是可以支撑用户正常购物时所需的***资源开销的,但在某类特殊情况下,比如电商推出的秒杀促销活动或者春节购买火车票等,此时在同一时间或者同一时间段内购买同样商品的用户非常多,此时电商平台需要能瞬时承受高并发且同时保证出售的商品不超售,但现实状况则是电商平台难以瞬时承受高并发,究其原因,一方面是现有技术水平、电商平台的运作成本等原因;另一方面则是用户的恶意刷单行为所导致,比如黄牛党通过刷单抢购火车票。
此外,通过加快软硬件的技术研发速度,同时加大电商平台的成本投入等,进而从本质上直接提升电商平台的高并发处理能力,但此类方式并不十分可取。因此,通过防止恶意刷单行为的发生,从而间接、相对地提升电商平台的高并发处理能力则更为可取且可操作性更强。
发明内容
本发明的主要目的在于提供一种控制订单生成的装置、方法及秒杀***,旨在解决如何实现对恶意刷单行为的防范的技术问题。
为实现上述目的,本发明提供的一种控制订单生成的装置,所述控制订单生成的装置包括:
秒杀信息获取模块,用于当接收到前端服务器所转发的客户端所发送的若干秒杀请求时,获取秒杀请求中的相关信息,所述相关信息至少包括用户信息、秒杀商品信息以及客户端IP地址;
秒杀请求确定模块,用于从所述若干秒杀请求中随机和/或分时段选择得到相应的可生成秒杀订单的秒杀请求;
秒杀订单生成模块,用于根据所确定的秒杀请求中的所述相关信息,生成相应的秒杀订单。
优选地,所述控制订单生成的装置还包括:IP黑名单确定模块,用于根据预置的IP黑名单策略,确定写入IP黑名单的客户端IP地址所对应的秒杀请求;
其中,所述IP黑名单确定模块包括:
访问次数增加单元,用于将所接收到的秒杀请求中客户端IP地址所对应的访问次数增加一次;
访问次数判断单元,用于判断所接收到的每一秒杀请求中客户端IP地址在预设访问时长内所对应的当前累计访问次数是否等于预置的访问次数阈值;
IP黑名单确定单元,用于当所接收到的每一秒杀请求中客户端IP地址在预设访问时长内所对应的当前累计访问次数等于预置的访问次数阈值时,将该秒杀请求所对应的客户端IP地址写入缓存服务器内的IP黑名单中并返回该秒杀请求所对应的客户端页面并刷新,其中,所述IP黑名单用于所述前端服务器拦截相应客户端所发送的秒杀请求。
优选地,所述秒杀请求确定模块包括:第一秒杀请求确定子模块,用于从所述若干秒杀请求中随机选择得到相应的可生成秒杀订单的秒杀请求;
其中,所述第一秒杀请求确定子模块包括:
随机数生成单元,用于对所接收到的秒杀请求进行标号处理并生成一随机数范围;
秒杀请求标号判断单元,用于根据生成的随机数范围,分别判断所接收到的每一秒杀请求的标号是否在所述随机数范围之内;
秒杀请求状态判断单元,用于当秒杀请求的标号在所述随机数范围之内时,判断该秒杀请求是否处于正在处理当中;
秒杀请求确定单元,用于当该秒杀请求未处于正在处理当中时,确定该秒杀请求可生成秒杀订单;
页面刷新单元,用于当该秒杀请求处于正在处理当中时,返回该秒杀请求所对应的客户端页面并刷新。
优选地,所述秒杀请求确定模块包括:第二秒杀请求确定子模块,用于从随机选择所得到的秒杀请求中,分时段选择得到相应的可生成秒杀订单的秒杀请求;
其中,所述第二秒杀请求确定子模块包括:
库存获取单元,用于获取随机选择所得到的秒杀请求所对应的秒杀商品的当前库存;
秒杀请求统计单元,用于在预设进入时长内,统计进入提单处理阶段的秒杀请求的数量是否等于该秒杀请求所对应的秒杀商品的预设比例的当前库存;
所述页面刷新单元还用于:当进入提单处理阶段的秒杀请求的数量等于该秒杀请求所对应的秒杀商品的预设比例的当前库存时,停止进入提单处理阶段,并对未进入提单处理阶段的秒杀请求所对应的客户端页面进行刷新处理。
优选地,所述控制订单生成的装置还包括:
第一判断模块,用于判断是否存在预置的秒杀商品购买数量的限制条件;
第二判断模块,用于当存在预置的秒杀商品购买数量的限制条件时,在生成秒杀订单之前,判断秒杀请求是否相应满足所述限制条件;
所述页面刷新单元还用于:当秒杀请求相应满足所述限制条件时,返回该秒杀请求所对应的客户端页面并刷新。
进一步地,为实现上述目的,本发明还提供一种控制订单生成的方法,所述控制订单生成的方法包括:
当接收到前端服务器所转发的客户端所发送的若干秒杀请求时,获取秒杀请求中的相关信息,所述相关信息至少包括用户信息、秒杀商品信息以及客户端IP地址;
从所述若干秒杀请求中随机和/或分时段选择得到相应的可生成秒杀订单的秒杀请求;
根据所确定的秒杀请求中的所述相关信息,生成相应的秒杀订单。
优选地,所述从所述若干秒杀请求中随机和/或分时段选择得到相应的可生成秒杀订单的秒杀请求之前包括:根据预置的IP黑名单策略,确定写入IP黑名单的客户端IP地址所对应的秒杀请求;
其中,根据预置的IP黑名单策略,确定写入IP黑名单的客户端IP地址所对应的秒杀请求进一步包括:
将所接收到的秒杀请求中客户端IP地址所对应的访问次数增加一次;
分别判断所接收到的每一秒杀请求中客户端IP地址在预设访问时长内所对应的当前累计访问次数是否等于预置的访问次数阈值;
若是,则将该秒杀请求所对应的客户端IP地址写入缓存服务器内的IP黑名单中并返回该秒杀请求所对应的客户端页面并刷新,其中,所述IP黑名单用于所述前端服务器拦截相应客户端所发送的秒杀请求。
优选地,所述从所述若干秒杀请求中随机选择得到相应的可生成秒杀订单的秒杀请求包括:
对所接收到的秒杀请求进行标号处理并生成一随机数范围;
根据生成的随机数范围,分别判断所接收到的每一秒杀请求的标号是否在所述随机数范围之内;
若秒杀请求的标号在所述随机数范围之内,则判断该秒杀请求是否处于正在处理当中;
当该秒杀请求未处于正在处理当中时,确定该秒杀请求可生成秒杀订单;
当该秒杀请求处于正在处理当中时,返回该秒杀请求所对应的客户端页面并刷新。
优选地,所述当该秒杀请求未处于正在处理当中时,确定该秒杀请求可生成秒杀订单之后包括:从随机选择所得到的秒杀请求中,分时段选择得到相应的可生成秒杀订单的秒杀请求;
其中,从随机选择所得到的秒杀请求中,分时段选择得到相应的可生成秒杀订单的秒杀请求进一步包括:
获取随机选择所得到的秒杀请求所对应的秒杀商品的当前库存;
在预设进入时长内,统计进入提单处理阶段的秒杀请求的数量是否等于该秒杀请求所对应的秒杀商品的预设比例的当前库存;
若是,则停止进入提单处理阶段,并对未进入提单处理阶段的秒杀请求所对应的客户端页面进行刷新处理。
优选地,所述根据所确定的秒杀请求中的所述相关信息,生成相应的秒杀订单之前包括:
判断是否存在预置的秒杀商品购买数量的限制条件;
若存在,则在生成秒杀订单之前,判断秒杀请求是否相应满足所述限制条件;
若是,则返回该秒杀请求所对应的客户端页面并刷新。
进一步地,为实现上述目的,本发明还提供一种秒杀***,包括若干客户端、若干前端服务器、若干后端服务器以及若干缓存服务器,所述后端服务器包括上述任一项所述的控制订单生成的装置。
优选地,所述前端服务器包括:
IP黑名获取模块,用于获取所述缓存服务器上所保存的IP黑名单;
秒杀请求接收模块,用于接收所述客户端所发送的秒杀请求;
IP判断模块,用于在接收到所述客户端所发送的秒杀请求时,判断所述IP黑名单中是否存在该秒杀请求中的客户端IP地址;
秒杀请求转发模块,用于当所述IP黑名单中不存在该秒杀请求中的客户端IP地址时,将该秒杀请求转发至所述后端服务器。
本发明改进了以往电商产品抢购所采用的先进入先得到的策略,通过采用随机选择策略和/或分时段选择策略以确定选择相应的可生成秒杀订单的秒杀请求,通过随机选择购买用户以及确定每一时段可以进入的购买用户数,从而可在一定程度上防止恶意刷单用户占据大量排队位而致使其他用户无法成功购买商品情况的发生,进而可在一定程度上防范或减少恶意刷单行为的发生。此外,进一步还可对购买用户的IP地址进行监控,从而拦截具有恶意购买行为的用户购买请求。通过本发明可以防范与降低恶意刷单行为的发生,从而相对提升电商平台的高并发性能,同时也提高了用户的使用体验。
附图说明
图1为本发明控制订单生成的装置第一实施例的功能模块示意图;
图2为现有秒杀***的基本功能结构示意图;
图3为本发明控制订单生成的装置第二实施例的功能模块示意图;
图4为图3中IP黑名单确定模块一实施例的细化功能模块示意图
图5为图1中秒杀请求确定模块一实施例的细化功能模块示意图;
图6为图5中第一秒杀请求确定子模块一实施例的细化功能模块示意图;
图7为图1中秒杀请求确定模块另一实施例的细化功能模块示意图;
图8为图7中第二秒杀请求确定子模块一实施例的细化功能模块示意图;
图9为本发明控制订单生成的装置第三实施例的功能模块示意图;
图10为本发明控制订单生成的方法第一实施例的流程示意图;
图11为本发明控制订单生成的方法第二实施例的流程示意图;
图12为图11中步骤S210的细化流程示意图
图13为图10中步骤S20一实施例的细化流程示意图;
图14为图10中步骤S20另一实施例的细化流程示意图;
图15为本发明控制订单生成的方法第三实施例的流程示意图;
图16为本发明秒杀***一实施例的功能模块示意图;
图17为图16中前端服务器的细化功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明控制订单生成的装置第一实施例的功能模块示意图。本实施例中,所述控制订单生成的装置包括:
秒杀信息获取模块10,用于当接收到前端服务器所转发的客户端所发送的若干秒杀请求时,获取秒杀请求中的相关信息,所述相关信息至少包括用户信息、秒杀商品信息以及客户端IP地址;
如图2所示的秒杀***的基本功能结构示意图。用户通过客户端(移动终端、计算机等)向前端服务器发送秒杀请求,其中,鉴于电商平台(包含秒杀***)较高的访问量,为提升电商平台的高并发处理能力,将对应的服务端设为第一层级的前端服务器以及第二层级的后端服务器的二级梯次处理结构;其中,前端服务器面向于所有客户端,用以接收所有客户端所发送的多个秒杀请求,并将多个秒杀请求分发到不同的多个后端服务器上。
例如,采用负载均衡服务器(load-balancingserver,LBS)进行负载分配,客户端的秒杀请求都首先到负载均衡服务器,然后由负载均衡服务器根据各个实际处理秒杀请求的后端服务器的状态,将秒杀请求具体分配到某个实际处理的后端服务器中,而对外公开的域名与IP地址都是这台负载均衡服务器。此外,负载均衡服务器一般只做负载均衡任务分配,但不是实际对网络秒杀请求进行处理的服务器。通过将多个服务请求均衡分配到实际执行的后端服务器中,从而保证整个***的高并发响应速度。
秒杀信息获取模块10接收前端服务器所转发的客户端所发送的若干秒杀请求,并从秒杀请求中解析获取如用户的账号(用户ID)、用户基本信息(姓名、电话、收货地址)、商品名称、购买数量以及客户端的IP地址等。
秒杀请求确定模块20,用于从所述若干秒杀请求中随机和/或分时段选择得到相应的可生成秒杀订单的秒杀请求;
鉴于秒杀活动的处理特点,比如先进入就先得到,看似一种公平的抢购策略,实际却很容易被恶意刷单从而使刷单用户可以获得更多的促销商品或其他利益;以及鉴于恶意刷单用户的刷单特点,比如集中在某一时间使用多台客户端或者多个账号进行刷单。因此,本实施例中,秒杀请求确定模块20通过采用随机选择购买用户的策略和/或采用分时间段,从而选择确定可以购买促销产品的用户,也即确定选择相应的可生成秒杀订单的秒杀请求。另外随机选择用户以及分时间段选择用户的方式方法都很多,本实施例中并不加以限定。例如,随机确定先进入的1000名用户中的任意500名用户可以获得购买机会;或者每次随机抽取500名用户获得购买机会等。又例如,限制每秒或每500毫秒内能够进入订单提交处理阶段的用户数量。本发明中的随机选择策略与分时段选择策略看似违反了先到先得的基本抢购规则,但实际从秒杀活动的整体公平性上讲,本发明也更进一步提高了秒杀活动的公平性。先到先得的竞争主要体现在硬件资源上的竞争,例如网速、抢购设备(计算机性能)等,而广大普通用户的硬件资源相对于恶意刷单用户的硬件资源来说,性能要逊色很多,因此,基于此,先到先得的基本抢购规则对于大部分普通用户来说并不是很公平。
本实施例中所采用的随机选择策略与分时段选择策略不仅可以从实际技术层次上防范恶意刷单用户的刷单行为,同时,由于改变了现有的先到先得的基本抢购规则,因此,可让用户觉得即使排到了第一位也不一定能够获得购买机会,因而相应避免出现同一时间高并发情况的发生,从而可以从改变用户抢购行为上来相对提升电商平台的并发处理能力。
秒杀订单生成模块30,用于根据所确定的秒杀请求中的所述相关信息,生成相应的秒杀订单。
本实施例中,在秒杀请求确定模块20确定了可以生成秒杀订单的秒杀请求后,秒杀订单生成模块30将根据秒杀信息获取模块10所接收到的用户信息、秒杀商品信息以及客户端IP地址等,生成相应的秒杀订单。
需要说明的是,本实施例中所述的刷单具体是指秒杀活动中对电商平台的并发处理能力产生制约影响的刷单行为。此类恶意刷单行为的访问量非常巨大,因而需要对其进行防范处理,但一般都只能在一定程度上对其进行防范而不能完全杜绝刷单行为的发生。
本实施例改进了以往电商产品抢购所采用的先进入先得到的策略,通过采用随机选择策略和/或分时段选择策略以确定选择相应的可生成秒杀订单的秒杀请求,通过随机选择购买用户以及确定每一时段可以进入的购买用户数,从而可在一定程度上防止恶意刷单用户占据大量排队位而致使其他用户无法成功购买商品情况的发生,进而可在一定程度上防范或减少恶意刷单行为的发生,从而相对提升电商平台的高并发性能,同时也提高了用户的使用体验。
参照图3,图3为本发明控制订单生成的装置第二实施例的功能模块示意图。本实施例中,所述控制订单生成的装置还包括:
IP黑名单确定模块40,用于根据预置的IP黑名单策略,确定写入IP黑名单的客户端IP地址所对应的秒杀请求;
本实施例中,鉴于通常恶意刷单用户所使用的客户端IP地址都比较集中,也即在少数几个IP地址上,通过登录更多的注册账号来进行恶意刷单,也即恶意刷单客户端所发送的秒杀请求上携带的IP地址都相同,因此,可以判定为刷单行为。因此,本实施例通过IP地址来锁定并阻止恶意刷单行为的发生。
参照图4,IP黑名单确定模块40包括:
访问次数增加单元401,用于将所接收到的秒杀请求中客户端IP地址所对应的访问次数增加一次;
对于非正常秒杀请求(恶意刷单)所对应的IP地址的锁定,本实施例中采用计数方式进行锁定。当接收到秒杀请求时,通过访问次数增加单元401对接收到的秒杀请求对应的IP地址进行计数保存。当下次再接收到新的秒杀请求且其对应的IP地址已经被记录保存时,通过访问次数增加单元401再对该相同的IP地址的访问次数的计数增加一次。
访问次数判断单元402,用于判断所接收到的每一秒杀请求中客户端IP地址在预设访问时长内所对应的当前累计访问次数是否等于预置的访问次数阈值;
一般正常购物时,秒杀请求在预设时间内所对应的访问次数不会超过一定范围,比如1秒中内不会超过10次,若达到这一正常水平,则可认为该秒杀请求为恶意刷单。
因此,在接收到新的秒杀请求后,访问次数判断单元402判断在预设访问时长内,该秒杀请求的IP地址当前的累计访问次数是否已经达到了预置的访问次数阈值,若达到了,则说明该IP地址所对应的秒杀请求为恶意刷单。
IP黑名单确定单元403,用于当所接收到的每一秒杀请求中客户端IP地址在预设访问时长内所对应的当前累计访问次数等于预置的访问次数阈值时,将该秒杀请求所对应的客户端IP地址写入缓存服务器内的IP黑名单中并返回该秒杀请求所对应的客户端页面并刷新,其中,所述IP黑名单用于所述前端服务器拦截相应客户端所发送的秒杀请求。
当访问次数判断单元402判断并确定当前IP地址所对应的秒杀请求存在恶意刷单问题时,IP黑名单确定单元403则确定该IP地址需要被锁定以便后续再访问时通过前端服务器进行拦截,也即通过IP黑名单确定单元403将该IP地址写入缓存服务器内的IP黑名单中,同时返回该秒杀请求所对应的客户端页面并对该客户端页面进行刷新,其中,刷新页面操作可作为一种对恶意刷单用户的反馈方式,当然返回客户端的操作也并不局限于刷新操作。
另外需要说明的是,缓存服务器是现有秒杀***中,为保持高并发处理能力而设置的一种用于存储公用资源的服务器,以便于快速处理存储、查找、获取公用资源,也即秒杀***采用一种分布式的服务器设置方式,从而减少高并发进程对后端服务器性能的影响。
本实施例中,通过监控每一秒杀请求的IP地址以统计该IP地址的访问次数,从而用以锁定存在恶意刷单的秒杀请求,并在下一次接收新的秒杀请求时,拦截被锁定的IP地址(即存在于IP黑名单中的IP地址)的秒杀请求。通过本实施例的IP地址锁定与请求拦截,可以防范绝大多数的恶意刷单情况的发生,但若需要进一步提升对恶意刷单问题的防范效果,可以再结合采用其他的防范策略,具体根据实际需要进行设置。
参照图5,图5为图1中秒杀请求确定模块一实施例的细化功能模块示意图。本实施例中,所述秒杀请求确定模块20包括:
第一秒杀请求确定子模块201,用于从所述若干秒杀请求中随机选择得到相应的可生成秒杀订单的秒杀请求;
如图6所示,所述第一秒杀请求确定子模块201包括:
随机数生成单元2011,用于对所接收到的秒杀请求进行标号处理并生成一随机数范围;
本实施例中,鉴于现有秒杀方式所采用的先进先得方式,也即提交秒杀请求越早越能抢购到秒杀商品,但该方式容易被恶意刷单,因此,本实施例中,通过采用随机数的方式确定可以提交的秒杀请求,从而在一定程度上弱化了现有先进先得的抢购规则,避免了用户为争夺“第一”而在同一时间内提交秒杀请求或者不间断提交重复的秒杀请求,从而导致电商平台的并发处理能力急剧下降。
本实施例中,通过随机数生成单元2011对所接收到的秒杀请求进行标号处理并生成一随机数范围。例如,每接收到一个秒杀请求随机数生成单元2011就对其进行标号,比如标号为001-1000,生成的随机数范围为100-500。需要说明的是,生成的随机数范围需要与标号保持交集。
秒杀请求标号判断单元2012,用于根据生成的随机数范围,分别判断所接收到的每一秒杀请求的标号是否在所述随机数范围之内;
本实施例中,将标号在随机数范围之内的秒杀请求确定为可以进行订单提交处理的秒杀请求,也即可以生成秒杀订单的秒杀请求。由于采用的是随机数进行确定,因此,有可能被再次确定为可进行订单提交处理的秒杀请求,因此,需要再次对此类情况进行二次判断。
秒杀请求状态判断单元2013,用于当秒杀请求的标号在所述随机数范围之内时,判断该秒杀请求是否处于正在处理当中;
秒杀请求确定单元2014,用于当该秒杀请求未处于正在处理当中时,确定该秒杀请求可生成秒杀订单;
页面刷新单元2015,用于当该秒杀请求处于正在处理当中时,返回该秒杀请求所对应的客户端页面并刷新。
当秒杀请求标号判断单元2012判断所接收到的秒杀请求的标号在随机数范围之内时,为避免产生重复递交,因此通过秒杀请求状态判断单元2013判断该秒杀请求是否处于正在处理当中;当确定该秒杀请求未处于正在处理当中时,秒杀请求确定单元2014确定该秒杀请求可生成秒杀订单;而若该秒杀请求处于正在处理当中时,则通过页面刷新单元2015返回该秒杀请求所对应的客户端页面并刷新该客户端页面。
本实施例中所采用的随机选择策略不仅可以从实际技术层次上防范恶意刷单用户的刷单行为,同时,由于改变了现有的先到先得的基本抢购规则,因此,可让用户觉得即使排到了第一位也不一定能够获得购买机会,因而相应避免出现同一时间高并发情况的发生,从而可以从改变用户抢购行为上来相对提升电商平台的并发处理能力。
参照图7,图7为图1中秒杀请求确定模块另一实施例的细化功能模块示意图。本实施例中,所述秒杀请求确定模块20包括:
第二秒杀请求确定子模块202,用于从随机选择所得到的秒杀请求中,分时段选择得到相应的可生成秒杀订单的秒杀请求;
恶意刷单的最大特征就是下单的数量非常巨大,除可通过IP地址进行锁定的方式外,电商平台一般难以与正常的订单请求进行区别。因此,为进一步对恶意刷单的秒杀请求进行防范,本实施例中采用分时段选择策略,通过控制每一时段进入订单提交阶段的秒杀请求的数量,以相对减少被成功提交的恶意刷单的订单数量情况的发生。
如图8所示,所述第二秒杀请求确定子模块202包括:
库存获取单元2021,用于获取随机选择所得到的秒杀请求所对应的秒杀商品的当前库存;
本实施例中,秒杀活动一个主要特征就是秒杀商品不能超售,也即提交的订单申请的数量不能超过当前的商品库存数。因此,通过库存获取单元2021以获取秒杀商品的当前库存,也即在根据随机选择策略所确定的秒杀请求时所对应的库存数量。
秒杀请求统计单元2022,用于在预设进入时长内,统计进入提单处理阶段的秒杀请求的数量是否等于该秒杀请求所对应的秒杀商品的预设比例的当前库存;
基于电商平台处理效率以及用户使用体验的考虑,本实施例中预设进入提单处理阶段的进入时长以及当前库存的预设比例,进入时长与库存比例的具体数值的设置不限,具体根据实际情况进行设置。例如,设置进入提单处理阶段的时长为1秒,且设置在该进入时长内所允许进行订单提交的秒杀请求数量为当前库存的50%,也即若当前的库存为1000件,则在1秒的提单时间内只允许500个秒杀请求生成提交订单。
所述页面刷新单元2015还用于:当进入提单处理阶段的秒杀请求的数量等于该秒杀请求所对应的秒杀商品的预设比例的当前库存时,停止进入提单处理阶段,并对未进入提单处理阶段的秒杀请求所对应的客户端页面进行刷新处理。
当秒杀请求统计单元2022统计的进入提单处理阶段的秒杀请求的数量等于该秒杀请求所对应的秒杀商品的预设比例的当前库存时,停止进入提单处理阶段的订单处理,并通过页面刷新单元2015对未进入提单处理阶段的秒杀请求所对应的客户端页面进行刷新处理。
本实施例中,在订单提交处理阶段,需要将秒杀请求中的相关信息,比如用户ID(账号)、商品信息、客户端IP地址等写入到缓存服务器中以便后续生成相应的秒杀订单。因此,可通过设置IP地址的过期时长,从而相应控制进入提单阶段的秒杀请求数,但本实施例并不限定于上述方式。本实施例中采用分时段选择策略不仅可降低恶意刷单的成功率,同时,也可相应提升电商平台的并发处理性能,从而提高用户使用体验。
参照图9,图9为本发明控制订单生成的装置第三实施例的功能模块示意图。本实施例中,所述控制订单生成的装置还包括:
第一判断模块50,用于判断是否存在预置的秒杀商品购买数量的限制条件;
为进一步限制同一用户对于同一秒杀商品的购买数量,本实施例中,可进一步预先设置秒杀商品购买数量的限制条件,但具体设置与否根据实际需要进行确定。同时,在生成秒杀订单之前,需要通过第一判断模块50以判断确定是否存在预设的限制条件。
第二判断模块60,用于当存在预置的秒杀商品购买数量的限制条件时,在生成秒杀订单之前,判断秒杀请求是否相应满足所述限制条件;
当第一判断模块50判断确定存在预置的秒杀商品购买数量的限制条件时,进一步通过第二判断模块60判断本次秒杀请求是否相应满足该限制条件。例如,限制同一用户对同一秒杀商品的购买数量为5个,而若当前同一用户已经购买了3个或准备购买3个,则仍然可以继续秒杀购买该商品。
所述页面刷新单元2015还用于:当秒杀请求相应满足所述限制条件时,返回该秒杀请求所对应的客户端页面并刷新。
当第二判断模块60判断本次的秒杀请求满足预置的限制条件时,也即用户已经达到设定的购买数量时,则通过页面刷新单元2015返回该秒杀请求所对应的客户端页面并刷新该客户端页面。
本实施例中进一步考虑到了对用户购买秒杀商品的数量限制,由于购买数量被限制,从而亦可在一定程度上防范恶意刷单情况的发生,从而相对提升电商平台的并发处理性能,同时也提高了用户使用体验。
参照图10,图10为本发明控制订单生成的方法第一实施例的流程示意图。本实施例中,所述控制订单生成的方法包括:
步骤S10,当接收到前端服务器所转发的客户端所发送的若干秒杀请求时,获取秒杀请求中的相关信息,所述相关信息至少包括用户信息、秒杀商品信息以及客户端IP地址;
本实施例中,用户通过客户端(移动终端、计算机等)向前端服务器发送秒杀请求,其中,鉴于电商平台(包含秒杀***)较高的访问量,为提升电商平台的高并发处理能力,将对应的服务端设为第一层级的前端服务器以及第二层级的后端服务器的二级梯次处理结构;其中,前端服务器面向于所有客户端,用以接收所有客户端所发送的多个秒杀请求,并将多个秒杀请求分发到不同的多个后端服务器上,如图4所示。
当接收前端服务器所转发的客户端所发送的若干秒杀请求,从秒杀请求中解析获取如用户的账号(用户ID)、用户基本信息(姓名、电话、收货地址)、商品名称、购买数量以及客户端的IP地址等。
步骤S20,从所述若干秒杀请求中随机和/或分时段选择得到相应的可生成秒杀订单的秒杀请求;
鉴于秒杀活动的处理特点,比如先进入就先得到,看似一种公平的抢购策略,实际却很容易被恶意刷单从而使刷单用户可以获得更多的促销商品或其他利益;以及鉴于恶意刷单用户的刷单特点,比如集中在某一时间使用多台客户端或者多个账号进行刷单。因此,本实施例中,通过采用随机选择购买用户的策略和/或采用分时间段,从而选择确定可以购买促销产品的用户,也即确定选择相应的可生成秒杀订单的秒杀请求。另外随机选择用户以及分时间段选择用户的方式方法都很多,本实施例中并不加以限定。
本实施例中的随机选择策略与分时段选择策略看似违反了先到先得的基本抢购规则,但实际从秒杀活动的整体公平性上讲,本发明也更进一步提高了秒杀活动的公平性。先到先得的竞争主要体现在硬件资源上的竞争,例如网速、抢购设备(计算机性能)等,而广大普通用户的硬件资源相对于恶意刷单用户的硬件资源来说,性能要逊色很多,因此,基于此,先到先得的基本抢购规则对于大部分普通用户来说并不是很公平。
本实施例中所采用的随机选择策略与分时段选择策略不仅可以从实际技术层次上防范恶意刷单用户的刷单行为,同时,由于改变了现有的先到先得的基本抢购规则,因此,可让用户觉得即使排到了第一位也不一定能够获得购买机会,因而相应避免出现同一时间高并发情况的发生,从而可以从改变用户抢购行为上来相对提升电商平台的并发处理能力。
步骤S30,根据所确定的秒杀请求中的所述相关信息,生成相应的秒杀订单。
本实施例中,在确定了可以生成秒杀订单的秒杀请求后,将根据所接收到的用户信息、秒杀商品信息以及客户端IP地址等,生成相应的秒杀订单。
需要说明的是,本实施例中所述的刷单具体是指秒杀活动中对电商平台的并发处理能力产生制约影响的刷单行为。此类恶意刷单行为的访问量非常巨大,因而需要对其进行防范处理,但一般都只能在一定程度上对其进行防范而不能完全杜绝刷单行为的发生。
本实施例改进了以往电商产品抢购所采用的先进入先得到的策略,通过采用随机选择策略和/或分时段选择策略以确定选择相应的可生成秒杀订单的秒杀请求,通过随机选择购买用户以及确定每一时段可以进入的购买用户数,从而可在一定程度上防止恶意刷单用户占据大量排队位而致使其他用户无法成功购买商品情况的发生,进而可在一定程度上防范或减少恶意刷单行为的发生,从而相对提升电商平台的高并发性能,同时也提高了用户的使用体验。
参照图11,图11为本发明控制订单生成的方法第二实施例的流程示意图。基于上述实施例,本实施例中,在上述步骤S20之前包括:
步骤S210,根据预置的IP黑名单策略,确定写入IP黑名单的客户端IP地址所对应的秒杀请求;
参照图12,图12为图11中步骤S210的细化流程示意图。本实施例中,步骤S210进一步包括:
步骤S2101,将所接收到的秒杀请求中客户端IP地址所对应的访问次数增加一次;
本实施例中,鉴于通常恶意刷单用户所使用的客户端IP地址都比较集中,也即在少数几个IP地址上,通过登录更多的注册账号来进行恶意刷单,也即恶意刷单客户端所发送的秒杀请求上携带的IP地址都相同,因此,可以判定为刷单行为。因此,本实施例通过IP地址来锁定并阻止恶意刷单行为的发生。
对于非正常秒杀请求(恶意刷单)所对应的IP地址的锁定,本实施例中采用计数方式进行锁定。当接收到秒杀请求时,通过对接收到的秒杀请求对应的IP地址进行计数保存。当下次再接收到新的秒杀请求且其对应的IP地址已经被记录保存时,再对该相同的IP地址的访问次数的计数增加一次。
步骤S2102,分别判断所接收到的每一秒杀请求中客户端IP地址在预设访问时长内所对应的当前累计访问次数是否等于预置的访问次数阈值;
一般正常购物时,秒杀请求在预设时间内所对应的访问次数不会超过一定范围,比如1秒中内不会超过10次,若达到这一正常水平,则可认为该秒杀请求为恶意刷单。
因此,在接收到新的秒杀请求后,判断在预设访问时长内,该秒杀请求的IP地址当前的累计访问次数是否已经达到了预置的访问次数阈值,若达到了,则说明该IP地址所对应的秒杀请求为恶意刷单。
步骤S2103,若是,则将该秒杀请求所对应的客户端IP地址写入缓存服务器内的IP黑名单中并返回该秒杀请求所对应的客户端页面并刷新,其中,所述IP黑名单用于所述前端服务器拦截相应客户端所发送的秒杀请求。
步骤S2104,若否,执行下一步骤。
当判断并确定当前IP地址所对应的秒杀请求存在恶意刷单问题时,确定该IP地址需要被锁定以便后续再访问时通过前端服务器进行拦截,也即将该IP地址写入缓存服务器内的IP黑名单中,同时返回该秒杀请求所对应的客户端页面并对该客户端页面进行刷新,其中,刷新页面操作可作为一种对恶意刷单用户的反馈方式,当然返回客户端的操作也并不局限于刷新操作。
另外需要说明的是,缓存服务器是现有秒杀***中,为保持高并发处理能力而设置的一种用于存储公用资源的服务器,以便于快速处理存储、查找、获取公用资源,也即秒杀***采用一种分布式的服务器设置方式,从而减少高并发进程对后端服务器性能的影响。
本实施例中,通过监控每一秒杀请求的IP地址以统计该IP地址的访问次数,从而用以锁定存在恶意刷单的秒杀请求,并在下一次接收新的秒杀请求时,拦截被锁定的IP地址(即存在于IP黑名单中的IP地址)的秒杀请求。通过本实施例的IP地址锁定与请求拦截,可以防范绝大多数的恶意刷单情况的发生,但若需要进一步提升对恶意刷单问题的防范效果,可以再结合采用其他的防范策略,具体根据实际需要进行设置。
参照图13,图13为图10中步骤S20一实施例的细化流程示意图。基于上述实施例,本实施例中,上述步骤S20:从所述若干秒杀请求中随机选择得到相应的可生成秒杀订单的秒杀请求进一步包括:
步骤S201,对所接收到的秒杀请求进行标号处理并生成一随机数范围;
本实施例中,鉴于现有秒杀方式所采用的先进先得方式,也即提交秒杀请求越早越能抢购到秒杀商品,但该方式容易被恶意刷单,因此,本实施例中,通过采用随机数的方式确定可以提交的秒杀请求,从而在一定程度上弱化了现有先进先得的抢购规则,避免了用户为争夺“第一”而在同一时间内提交秒杀请求或者不间断提交重复的秒杀请求,从而导致电商平台的并发处理能力急剧下降。
本实施例中,通过对所接收到的秒杀请求进行标号处理并生成一随机数范围。例如,每接收到一个秒杀请求就对其进行标号,比如标号为001-1000,生成的随机数范围为100-500。需要说明的是,生成的随机数范围需要与标号保持交集。
步骤S202,根据生成的随机数范围,分别判断所接收到的每一秒杀请求的标号是否在所述随机数范围之内;
本实施例中,将标号在随机数范围之内的秒杀请求确定为可以进行订单提交处理的秒杀请求,也即可以生成秒杀订单的秒杀请求。由于采用的是随机数进行确定,因此,有可能被再次确定为可进行订单提交处理的秒杀请求,因此,需要再次对此类情况进行二次判断。
步骤S203,若秒杀请求的标号在所述随机数范围之内,则判断该秒杀请求是否处于正在处理当中;
步骤S204,当该秒杀请求未处于正在处理当中时,确定该秒杀请求可生成秒杀订单;
步骤S205,当该秒杀请求处于正在处理当中时,返回该秒杀请求所对应的客户端页面并刷新。
当判断所接收到的秒杀请求的标号在随机数范围之内时,为避免产生重复递交,因此判断该秒杀请求是否处于正在处理当中;当确定该秒杀请求未处于正在处理当中时,确定该秒杀请求可生成秒杀订单;而若该秒杀请求处于正在处理当中时,则返回该秒杀请求所对应的客户端页面并刷新该客户端页面。
本实施例中所采用的随机选择策略不仅可以从实际技术层次上防范恶意刷单用户的刷单行为,同时,由于改变了现有的先到先得的基本抢购规则,因此,可让用户觉得即使排到了第一位也不一定能够获得购买机会,因而相应避免出现同一时间高并发情况的发生,从而可以从改变用户抢购行为上来相对提升电商平台的并发处理能力。
参照图14,图14为图10中步骤S20另一实施例的细化流程示意图。基于上述实施例,本实施例中,在上述步骤S204之后,上述步骤S20:从随机选择所得到的秒杀请求中,分时段选择得到相应的可生成秒杀订单的秒杀请求进一步包括:
步骤S206,获取随机选择所得到的秒杀请求所对应的秒杀商品的当前库存;
恶意刷单的最大特征就是下单的数量非常巨大,除可通过IP地址进行锁定的方式外,电商平台一般难以与正常的订单请求进行区别。因此,为进一步对恶意刷单的秒杀请求进行防范,本实施例中采用分时段选择策略,通过控制每一时段进入订单提交阶段的秒杀请求的数量,以相对减少被成功提交的恶意刷单的订单数量情况的发生。
本实施例中,秒杀活动一个主要特征就是秒杀商品不能超售,也即提交的订单申请的数量不能超过当前的商品库存数。因此,获取秒杀商品的当前库存,也即在根据随机选择策略所确定的秒杀请求时所对应的库存数量。
步骤S207,在预设进入时长内,统计进入提单处理阶段的秒杀请求的数量是否等于该秒杀请求所对应的秒杀商品的预设比例的当前库存;
基于电商平台处理效率以及用户使用体验的考虑,本实施例中预设进入提单处理阶段的进入时长以及当前库存的预设比例,进入时长与库存比例的具体数值的设置不限,具体根据实际情况进行设置。例如,设置进入提单处理阶段的时长为1秒,且设置在该进入时长内所允许进行订单提交的秒杀请求数量为当前库存的50%,也即若当前的库存为1000件,则在1秒的提单时间内只允许500个秒杀请求生成提交订单。
步骤S208,若是,则停止进入提单处理阶段,并对未进入提单处理阶段的秒杀请求所对应的客户端页面进行刷新处理。
当统计的进入提单处理阶段的秒杀请求的数量等于该秒杀请求所对应的秒杀商品的预设比例的当前库存时,停止进入提单处理阶段的订单处理,并对未进入提单处理阶段的秒杀请求所对应的客户端页面进行刷新处理。
本实施例中,在订单提交处理阶段,需要将秒杀请求中的相关信息,比如用户ID(账号)、商品信息、客户端IP地址等写入到缓存服务器中以便后续生成相应的秒杀订单。因此,可通过设置IP地址的过期时长,从而相应控制进入提单阶段的秒杀请求数,但本实施例并不限定于上述方式。本实施例中采用分时段选择策略不仅可降低恶意刷单的成功率,同时,也可相应提升电商平台的并发处理性能,从而提高用户使用体验。
参照图15,图15为本发明控制订单生成的方法第三实施例的流程示意图。基于上述实施例,本实施例中,上述步骤S30之前包括:
步骤S40,判断是否存在预置的秒杀商品购买数量的限制条件;
为进一步限制同一用户对于同一秒杀商品的购买数量,本实施例中,可进一步预先设置秒杀商品购买数量的限制条件,但具体设置与否根据实际需要进行确定。同时,在生成秒杀订单之前,需要判断确定是否存在预设的限制条件。
步骤S50,若存在,则在生成秒杀订单之前,判断秒杀请求是否相应满足所述限制条件;
当判断确定存在预置的秒杀商品购买数量的限制条件时,进一步判断本次秒杀请求是否相应满足该限制条件。例如,限制同一用户对同一秒杀商品的购买数量为5个,而若当前同一用户已经购买了3个或准备购买3个,则仍然可以继续秒杀购买该商品。
步骤S60,若是,则返回该秒杀请求所对应的客户端页面并刷新;
步骤S70,若否,执行下一步。
当判断本次的秒杀请求满足预置的限制条件时,也即用户已经达到设定的购买数量时,则返回该秒杀请求所对应的客户端页面并刷新该客户端页面。
本实施例中进一步考虑到了对用户购买秒杀商品的数量限制,由于购买数量被限制,从而亦可在一定程度上防范恶意刷单情况的发生,从而相对提升电商平台的并发处理性能,同时也提高了用户使用体验。
参照图16,图16为本发明秒杀***的功能模块示意图。本实施例中,秒杀***包括若干客户端510、若干前端服务器520、若干后端服务器530以及若干缓存服务器540,其中,后端服务器530包括控制订单生成的装置5301。
本实施例中,用户通过客户端510上的浏览器应用,登陆电商平台(服务端)上的秒杀抢购页面,并向电商平台提交秒杀请求。现有电商平台为更好实现对高并发数据的处理,通常采用分布式的多级服务器结构,也即电商平台至少包括前端服务器520、后端服务器530以及缓存服务器540,其中,前端服务器520具体用于接收客户端510所提交的秒杀请求,并进行初步处理后分发至后端服务器530;缓存服务器540具体用于存储公共资源,以避免重复从数据库中获取而影响到秒杀***的整体并发性能。比如,首次需要的数据资源可从数据库中获取,而后续则可直接从缓存服务器中获取。
例如,前端服务器520可采用负载均衡服务器(load-balancingserver,LBS)进行负载分配,客户端510的秒杀请求都首先到负载均衡服务器,然后由负载均衡服务器根据各个实际处理秒杀请求的后端服务器530的状态,将秒杀请求具体分配到某个实际处理的后端服务器530中,而对外公开的域名与IP地址都是这台负载均衡服务器。此外,负载均衡服务器一般只做负载均衡任务分配,但不是实际对网络秒杀请求进行处理的服务器。通过将多个服务请求均衡分配到实际执行的后端服务器中,从而保证整个***的高并发响应速度。其中,为保证负载均衡服务器的高并发处理能力,本实施例中优选采用Nginx作为反向代理服务器,以将接收到的客户端510所提交的秒杀请求分发至后端服务器530,从而保证秒杀***的整体并发性能。
此外,为进一步保证电商平台的整体并发性能,缓存服务器540采用Redis存储***(key-value结构)进行数据的存储。比如将客户端的IP地址作为Key值,而将用户ID(账号)与商品信息作为该Key的value值写入到缓存服务器540中。
后端服务器530通过控制订单生成的装置5301以对可能存在的刷单行为进行防范,通过限制或减少对刷单秒杀请求的处理,从而减少刷单行为对秒杀***的资源消耗,提高秒杀***的高并发处理能力,以及降低刷单行为对秒杀活动的公平性的影响,进而提升用户的购物体验。
参照图17,图17为图16中前端服务器的细化功能模块示意图。本实施例中,所述前端服务器520包括:
IP黑名获取模块5201,用于获取所述缓存服务器上所保存的IP黑名单;
秒杀请求接收模块5202,用于接收所述客户端所发送的秒杀请求;
IP判断模块5203,用于在接收到所述客户端所发送的秒杀请求时,判断所述IP黑名单中是否存在该秒杀请求中的客户端IP地址;
秒杀请求转发模块5204,用于当所述IP黑名单中不存在该秒杀请求中的客户端IP地址时,将该秒杀请求转发至所述后端服务器。
本实施例中,鉴于通常恶意刷单用户所使用的客户端IP地址都比较集中,也即在少数几个IP地址上,通过登录更多的注册账号来进行恶意刷单,也即恶意刷单客户端所发送的秒杀请求上携带的IP地址都相同,因此,可以判定为刷单行为。因此,本实施例通过IP地址来锁定并阻止恶意刷单行为的发生。
对于非正常秒杀请求(恶意刷单)所对应的IP地址的锁定,本实施例中采用计数方式进行锁定。当后端服务器530接收到秒杀请求时,后端服务器530对接收到的秒杀请求对应的IP地址进行计数保存。当下次再接收到新的秒杀请求且其对应的IP地址已经被记录保存时,再对该相同的IP地址的访问次数的计数增加一次。
一般正常购物时,秒杀请求在预设时间内所对应的访问次数不会超过一定范围,比如1秒中内不会超过10次,若达到这一正常水平,则可认为该秒杀请求为恶意刷单。因此,后端服务器530在接收到新的秒杀请求后,先判断在预设访问时长内,该秒杀请求的IP地址当前的累计访问次数是否已经达到了预置的访问次数阈值,若达到了,则说明该IP地址所对应的秒杀请求为恶意刷单。后端服务器530将该IP地址写入缓存服务器540内的IP黑名单中以便后续再访问时通过前端服务器520进行拦截。
前端服务器520首先通过IP黑名获取模块5201获取缓存服务器540上所保存的IP黑名单。同时,通过秒杀请求接收模块5202接收户端510所提交的秒杀请求。然后,通过IP判断模块5203判断IP黑名单中是否存在该秒杀请求中的客户端IP地址;若不存在,则通过秒杀请求转发模块5204,将该秒杀请求转发至后端服务器530。而若存在,则返回该IP地址所在客户端510,并对该客户端510的页面进行刷新处理。
本实施例中,通过监控每一秒杀请求的IP地址以统计该IP地址的访问次数,从而用以锁定存在恶意刷单的秒杀请求,并在下一次接收新的秒杀请求时,拦截被锁定的IP地址(即存在于IP黑名单中的IP地址)的秒杀请求。通过本实施例的IP地址锁定与请求拦截,可以防范绝大多数的恶意刷单情况的发生,但若需要进一步提升对恶意刷单问题的防范效果,可以再结合采用其他的防范策略,具体根据实际需要进行设置。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (12)
1.一种控制订单生成的装置,其特征在于,所述控制订单生成的装置包括:
秒杀信息获取模块,用于当接收到前端服务器所转发的客户端所发送的若干秒杀请求时,获取秒杀请求中的相关信息,所述相关信息至少包括用户信息、秒杀商品信息以及客户端IP地址;
秒杀请求确定模块,用于从所述若干秒杀请求中随机和/或分时段选择得到相应的可生成秒杀订单的秒杀请求;
秒杀订单生成模块,用于根据所确定的秒杀请求中的所述相关信息,生成相应的秒杀订单。
2.如权利要求1所述的控制订单生成的装置,其特征在于,所述控制订单生成的装置还包括:IP黑名单确定模块,用于根据预置的IP黑名单策略,确定写入IP黑名单的客户端IP地址所对应的秒杀请求;
其中,所述IP黑名单确定模块包括:
访问次数增加单元,用于将所接收到的秒杀请求中客户端IP地址所对应的访问次数增加一次;
访问次数判断单元,用于判断所接收到的每一秒杀请求中客户端IP地址在预设访问时长内所对应的当前累计访问次数是否等于预置的访问次数阈值;
IP黑名单确定单元,用于当所接收到的每一秒杀请求中客户端IP地址在预设访问时长内所对应的当前累计访问次数等于预置的访问次数阈值时,将该秒杀请求所对应的客户端IP地址写入缓存服务器内的IP黑名单中并返回该秒杀请求所对应的客户端页面并刷新,其中,所述IP黑名单用于所述前端服务器拦截相应客户端所发送的秒杀请求。
3.如权利要求1或2所述的控制订单生成的装置,其特征在于,所述秒杀请求确定模块包括:第一秒杀请求确定子模块,用于从所述若干秒杀请求中随机选择得到相应的可生成秒杀订单的秒杀请求;
其中,所述第一秒杀请求确定子模块包括:
随机数生成单元,用于对所接收到的秒杀请求进行标号处理并生成一随机数范围;
秒杀请求标号判断单元,用于根据生成的随机数范围,分别判断所接收到的每一秒杀请求的标号是否在所述随机数范围之内;
秒杀请求状态判断单元,用于当秒杀请求的标号在所述随机数范围之内时,判断该秒杀请求是否处于正在处理当中;
秒杀请求确定单元,用于当该秒杀请求未处于正在处理当中时,确定该秒杀请求可生成秒杀订单;
页面刷新单元,用于当该秒杀请求处于正在处理当中时,返回该秒杀请求所对应的客户端页面并刷新。
4.如权利要求3所述的控制订单生成的装置,其特征在于,所述秒杀请求确定模块包括:第二秒杀请求确定子模块,用于从随机选择所得到的秒杀请求中,分时段选择得到相应的可生成秒杀订单的秒杀请求;
其中,所述第二秒杀请求确定子模块包括:
库存获取单元,用于获取随机选择所得到的秒杀请求所对应的秒杀商品的当前库存;
秒杀请求统计单元,用于在预设进入时长内,统计进入提单处理阶段的秒杀请求的数量是否等于该秒杀请求所对应的秒杀商品的预设比例的当前库存;
所述页面刷新单元还用于:当进入提单处理阶段的秒杀请求的数量等于该秒杀请求所对应的秒杀商品的预设比例的当前库存时,停止进入提单处理阶段,并对未进入提单处理阶段的秒杀请求所对应的客户端页面进行刷新处理。
5.如权利要求4所述的控制订单生成的装置,其特征在于,所述控制订单生成的装置还包括:
第一判断模块,用于判断是否存在预置的秒杀商品购买数量的限制条件;
第二判断模块,用于当存在预置的秒杀商品购买数量的限制条件时,在生成秒杀订单之前,判断秒杀请求是否相应满足所述限制条件;
所述页面刷新单元还用于:当秒杀请求相应满足所述限制条件时,返回该秒杀请求所对应的客户端页面并刷新。
6.一种控制订单生成的方法,其特征在于,所述控制订单生成的方法包括:
当接收到前端服务器所转发的客户端所发送的若干秒杀请求时,获取秒杀请求中的相关信息,所述相关信息至少包括用户信息、秒杀商品信息以及客户端IP地址;
从所述若干秒杀请求中随机和/或分时段选择得到相应的可生成秒杀订单的秒杀请求;
根据所确定的秒杀请求中的所述相关信息,生成相应的秒杀订单。
7.如权利要求6所述的控制订单生成的方法,其特征在于,所述从所述若干秒杀请求中随机和/或分时段选择得到相应的可生成秒杀订单的秒杀请求之前包括:根据预置的IP黑名单策略,确定写入IP黑名单的客户端IP地址所对应的秒杀请求;
其中,根据预置的IP黑名单策略,确定写入IP黑名单的客户端IP地址所对应的秒杀请求进一步包括:
将所接收到的秒杀请求中客户端IP地址所对应的访问次数增加一次;
分别判断所接收到的每一秒杀请求中客户端IP地址在预设访问时长内所对应的当前累计访问次数是否等于预置的访问次数阈值;
若是,则将该秒杀请求所对应的客户端IP地址写入缓存服务器内的IP黑名单中并返回该秒杀请求所对应的客户端页面并刷新,其中,所述IP黑名单用于所述前端服务器拦截相应客户端所发送的秒杀请求。
8.如权利要求6或7所述的控制订单生成的方法,其特征在于,所述从所述若干秒杀请求中随机选择得到相应的可生成秒杀订单的秒杀请求包括:
对所接收到的秒杀请求进行标号处理并生成一随机数范围;
根据生成的随机数范围,分别判断所接收到的每一秒杀请求的标号是否在所述随机数范围之内;
若秒杀请求的标号在所述随机数范围之内,则判断该秒杀请求是否处于正在处理当中;
当该秒杀请求未处于正在处理当中时,确定该秒杀请求可生成秒杀订单;
当该秒杀请求处于正在处理当中时,返回该秒杀请求所对应的客户端页面并刷新。
9.如权利要求8所述的控制订单生成的方法,其特征在于,所述当该秒杀请求未处于正在处理当中时,确定该秒杀请求可生成秒杀订单之后包括:从随机选择所得到的秒杀请求中,分时段选择得到相应的可生成秒杀订单的秒杀请求;
其中,从随机选择所得到的秒杀请求中,分时段选择得到相应的可生成秒杀订单的秒杀请求进一步包括:
获取随机选择所得到的秒杀请求所对应的秒杀商品的当前库存;
在预设进入时长内,统计进入提单处理阶段的秒杀请求的数量是否等于该秒杀请求所对应的秒杀商品的预设比例的当前库存;
若是,则停止进入提单处理阶段,并对未进入提单处理阶段的秒杀请求所对应的客户端页面进行刷新处理。
10.如权利要求9所述的控制订单生成的方法,其特征在于,所述根据所确定的秒杀请求中的所述相关信息,生成相应的秒杀订单之前包括:
判断是否存在预置的秒杀商品购买数量的限制条件;
若存在,则在生成秒杀订单之前,判断秒杀请求是否相应满足所述限制条件;
若是,则返回该秒杀请求所对应的客户端页面并刷新。
11.一种秒杀***,包括若干客户端、若干前端服务器、若干后端服务器以及若干缓存服务器,其特征在于,所述后端服务器包括权利要求1-5中任一项所述的控制订单生成的装置。
12.如权利要求11所述的秒杀***,其特征在于,所述前端服务器包括:
IP黑名获取模块,用于获取所述缓存服务器上所保存的IP黑名单;
秒杀请求接收模块,用于接收所述客户端所发送的秒杀请求;
IP判断模块,用于在接收到所述客户端所发送的秒杀请求时,判断所述IP黑名单中是否存在该秒杀请求中的客户端IP地址;
秒杀请求转发模块,用于当所述IP黑名单中不存在该秒杀请求中的客户端IP地址时,将该秒杀请求转发至所述后端服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510642366.3A CN105160572A (zh) | 2015-09-30 | 2015-09-30 | 控制订单生成的装置、方法及秒杀*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510642366.3A CN105160572A (zh) | 2015-09-30 | 2015-09-30 | 控制订单生成的装置、方法及秒杀*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105160572A true CN105160572A (zh) | 2015-12-16 |
Family
ID=54801420
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510642366.3A Pending CN105160572A (zh) | 2015-09-30 | 2015-09-30 | 控制订单生成的装置、方法及秒杀*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105160572A (zh) |
Cited By (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105610649A (zh) * | 2016-02-22 | 2016-05-25 | 太仓苏易信息科技有限公司 | 一种挂号黑名单监测*** |
CN105956911A (zh) * | 2016-05-23 | 2016-09-21 | 北京小米移动软件有限公司 | 购买请求处理方法及装置 |
CN106101080A (zh) * | 2016-05-31 | 2016-11-09 | 乐视控股(北京)有限公司 | 页面访问控制方法和装置 |
CN106127505A (zh) * | 2016-06-14 | 2016-11-16 | 北京众成汇通信息技术有限公司 | 一种刷单识别方法及装置 |
CN106204232A (zh) * | 2016-07-18 | 2016-12-07 | 苏州华车网络科技有限公司 | 一种处理高并发交互数据请求的***和方法 |
CN106355470A (zh) * | 2016-08-30 | 2017-01-25 | 福建新大陆软件工程有限公司 | 一种电子商务抢购方法及*** |
CN106506627A (zh) * | 2016-10-26 | 2017-03-15 | 北京奇虎科技有限公司 | 用户交互活动的处理方法及装置 |
CN106598881A (zh) * | 2016-12-20 | 2017-04-26 | 北京小米移动软件有限公司 | 页面处理方法及装置 |
CN106651527A (zh) * | 2016-12-29 | 2017-05-10 | 江西博瑞彤芸科技有限公司 | 多进程的订单信息处理方法 |
CN106934686A (zh) * | 2017-02-16 | 2017-07-07 | 上海咿呀信息科技有限公司 | 一种自助下单的方法及*** |
CN106934627A (zh) * | 2015-12-28 | 2017-07-07 | ***通信集团公司 | 一种电商行业作弊行为的检测方法及装置 |
CN106997546A (zh) * | 2016-01-26 | 2017-08-01 | ***通信集团安徽有限公司 | 一种订单处理方法及装置 |
CN107784554A (zh) * | 2017-09-28 | 2018-03-09 | 深圳乐信软件技术有限公司 | 订单处理的方法、装置、存储介质、服务器及终端设备 |
CN108123963A (zh) * | 2018-01-19 | 2018-06-05 | 深圳市易仓科技有限公司 | 一种跨境电商的api辅助***及处理方法 |
CN108154414A (zh) * | 2016-12-05 | 2018-06-12 | 天脉聚源(北京)科技有限公司 | 一种处理大批量并发互联网购物业务的方法和*** |
CN108305134A (zh) * | 2017-01-13 | 2018-07-20 | 阿里巴巴集团控股有限公司 | 一种机票订单的安全检测方法、设备以及*** |
CN108512938A (zh) * | 2018-04-17 | 2018-09-07 | 阿里巴巴集团控股有限公司 | 一种数据请求的处理方法、装置及电子设备 |
CN108564448A (zh) * | 2018-04-23 | 2018-09-21 | 广东奥园奥买家电子商务有限公司 | 一种订单防刷的实现方法 |
WO2018214834A1 (zh) * | 2017-05-22 | 2018-11-29 | 阿里巴巴集团控股有限公司 | 一种业务执行的方法及装置 |
CN108959879A (zh) * | 2018-05-31 | 2018-12-07 | 北京五八信息技术有限公司 | 应用程序的数据获取方法、装置、电子设备及服务器 |
CN110223109A (zh) * | 2019-05-24 | 2019-09-10 | 深圳市元征科技股份有限公司 | 一种线上购物方法和相关装置 |
CN110333951A (zh) * | 2019-07-09 | 2019-10-15 | 北京首汽智行科技有限公司 | 一种商品抢购请求分配方法 |
CN110730357A (zh) * | 2019-09-25 | 2020-01-24 | 北京达佳互联信息技术有限公司 | 直播交互方法、装置、服务器及存储介质 |
CN110738506A (zh) * | 2019-10-22 | 2020-01-31 | 杭州蓝诗网络科技有限公司 | 购物平台恶意差评拦截*** |
CN110889745A (zh) * | 2019-11-22 | 2020-03-17 | 无线生活(北京)信息技术有限公司 | 一种智能识别抢购行为的方法及装置 |
CN111507729A (zh) * | 2020-04-29 | 2020-08-07 | 广东所能网络有限公司 | 一种基于移动互联网的电子商务风险控制***及方法 |
CN111651631A (zh) * | 2020-04-28 | 2020-09-11 | 长沙证通云计算有限公司 | 高并发视频数据处理方法、电子设备、存储介质及*** |
CN111784458A (zh) * | 2020-06-30 | 2020-10-16 | 中国民航信息网络股份有限公司 | 机票秒杀方法及***、存储介质及电子设备 |
CN111899856A (zh) * | 2020-07-25 | 2020-11-06 | 广州海鹚网络科技有限公司 | 一种医院挂号的风险管控方法、装置、设备和存储介质 |
CN112215622A (zh) * | 2020-09-18 | 2021-01-12 | 南京欣网互联网络科技有限公司 | 一种基于订单信息的风险防控方法及其*** |
CN112669058A (zh) * | 2020-12-21 | 2021-04-16 | 上海多维度网络科技股份有限公司 | 应用程序的数据处理方法以及装置、存储介质、电子装置 |
CN112819490A (zh) * | 2019-11-15 | 2021-05-18 | 北京沃东天骏信息技术有限公司 | 一种预告秒杀广告的装置和方法 |
CN112910947A (zh) * | 2020-12-31 | 2021-06-04 | 南京联创互联网技术有限公司 | 一种基于lua的高并发限流秒杀技术 |
CN113141337A (zh) * | 2020-01-19 | 2021-07-20 | 上海静客网络科技有限公司 | 线上抢购***高并发场景处理方法 |
CN113783799A (zh) * | 2020-06-09 | 2021-12-10 | 马上消费金融股份有限公司 | 一种流量控制方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101980275A (zh) * | 2010-11-01 | 2011-02-23 | 深圳市同洲电子股份有限公司 | 一种实现商品订购的***、数字电视终端、装置及方法 |
CN102682398A (zh) * | 2012-05-23 | 2012-09-19 | 黄洪程 | 一种促销策略应用的电子商务方法 |
CN104462977A (zh) * | 2014-12-23 | 2015-03-25 | 北京京东尚科信息技术有限公司 | 数据处理方法和*** |
CN104519018A (zh) * | 2013-09-29 | 2015-04-15 | 阿里巴巴集团控股有限公司 | 一种防止针对服务器的恶意请求的方法、装置和*** |
-
2015
- 2015-09-30 CN CN201510642366.3A patent/CN105160572A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101980275A (zh) * | 2010-11-01 | 2011-02-23 | 深圳市同洲电子股份有限公司 | 一种实现商品订购的***、数字电视终端、装置及方法 |
CN102682398A (zh) * | 2012-05-23 | 2012-09-19 | 黄洪程 | 一种促销策略应用的电子商务方法 |
CN104519018A (zh) * | 2013-09-29 | 2015-04-15 | 阿里巴巴集团控股有限公司 | 一种防止针对服务器的恶意请求的方法、装置和*** |
CN104462977A (zh) * | 2014-12-23 | 2015-03-25 | 北京京东尚科信息技术有限公司 | 数据处理方法和*** |
Cited By (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106934627A (zh) * | 2015-12-28 | 2017-07-07 | ***通信集团公司 | 一种电商行业作弊行为的检测方法及装置 |
CN106997546A (zh) * | 2016-01-26 | 2017-08-01 | ***通信集团安徽有限公司 | 一种订单处理方法及装置 |
CN105610649A (zh) * | 2016-02-22 | 2016-05-25 | 太仓苏易信息科技有限公司 | 一种挂号黑名单监测*** |
CN105956911A (zh) * | 2016-05-23 | 2016-09-21 | 北京小米移动软件有限公司 | 购买请求处理方法及装置 |
CN106101080A (zh) * | 2016-05-31 | 2016-11-09 | 乐视控股(北京)有限公司 | 页面访问控制方法和装置 |
CN106127505A (zh) * | 2016-06-14 | 2016-11-16 | 北京众成汇通信息技术有限公司 | 一种刷单识别方法及装置 |
CN106204232A (zh) * | 2016-07-18 | 2016-12-07 | 苏州华车网络科技有限公司 | 一种处理高并发交互数据请求的***和方法 |
CN106355470A (zh) * | 2016-08-30 | 2017-01-25 | 福建新大陆软件工程有限公司 | 一种电子商务抢购方法及*** |
CN106506627B (zh) * | 2016-10-26 | 2019-06-25 | 北京奇虎科技有限公司 | 用户交互活动的处理方法及装置 |
CN106506627A (zh) * | 2016-10-26 | 2017-03-15 | 北京奇虎科技有限公司 | 用户交互活动的处理方法及装置 |
CN108154414A (zh) * | 2016-12-05 | 2018-06-12 | 天脉聚源(北京)科技有限公司 | 一种处理大批量并发互联网购物业务的方法和*** |
CN106598881A (zh) * | 2016-12-20 | 2017-04-26 | 北京小米移动软件有限公司 | 页面处理方法及装置 |
CN106651527A (zh) * | 2016-12-29 | 2017-05-10 | 江西博瑞彤芸科技有限公司 | 多进程的订单信息处理方法 |
CN108305134B (zh) * | 2017-01-13 | 2022-07-29 | 阿里巴巴集团控股有限公司 | 一种机票订单的安全检测方法、设备以及*** |
CN108305134A (zh) * | 2017-01-13 | 2018-07-20 | 阿里巴巴集团控股有限公司 | 一种机票订单的安全检测方法、设备以及*** |
CN106934686A (zh) * | 2017-02-16 | 2017-07-07 | 上海咿呀信息科技有限公司 | 一种自助下单的方法及*** |
WO2018214834A1 (zh) * | 2017-05-22 | 2018-11-29 | 阿里巴巴集团控股有限公司 | 一种业务执行的方法及装置 |
US10554388B2 (en) | 2017-05-22 | 2020-02-04 | Alibaba Group Holding Limited | Service execution method and device |
CN107784554A (zh) * | 2017-09-28 | 2018-03-09 | 深圳乐信软件技术有限公司 | 订单处理的方法、装置、存储介质、服务器及终端设备 |
CN108123963A (zh) * | 2018-01-19 | 2018-06-05 | 深圳市易仓科技有限公司 | 一种跨境电商的api辅助***及处理方法 |
CN108512938A (zh) * | 2018-04-17 | 2018-09-07 | 阿里巴巴集团控股有限公司 | 一种数据请求的处理方法、装置及电子设备 |
CN108512938B (zh) * | 2018-04-17 | 2021-03-30 | 创新先进技术有限公司 | 一种数据请求的处理方法、装置及电子设备 |
CN108564448A (zh) * | 2018-04-23 | 2018-09-21 | 广东奥园奥买家电子商务有限公司 | 一种订单防刷的实现方法 |
CN108959879A (zh) * | 2018-05-31 | 2018-12-07 | 北京五八信息技术有限公司 | 应用程序的数据获取方法、装置、电子设备及服务器 |
CN110223109B (zh) * | 2019-05-24 | 2023-09-05 | 深圳市元征科技股份有限公司 | 一种线上购物方法和相关装置 |
CN110223109A (zh) * | 2019-05-24 | 2019-09-10 | 深圳市元征科技股份有限公司 | 一种线上购物方法和相关装置 |
CN110333951A (zh) * | 2019-07-09 | 2019-10-15 | 北京首汽智行科技有限公司 | 一种商品抢购请求分配方法 |
CN110730357A (zh) * | 2019-09-25 | 2020-01-24 | 北京达佳互联信息技术有限公司 | 直播交互方法、装置、服务器及存储介质 |
CN110738506A (zh) * | 2019-10-22 | 2020-01-31 | 杭州蓝诗网络科技有限公司 | 购物平台恶意差评拦截*** |
CN112819490A (zh) * | 2019-11-15 | 2021-05-18 | 北京沃东天骏信息技术有限公司 | 一种预告秒杀广告的装置和方法 |
CN110889745A (zh) * | 2019-11-22 | 2020-03-17 | 无线生活(北京)信息技术有限公司 | 一种智能识别抢购行为的方法及装置 |
CN113141337A (zh) * | 2020-01-19 | 2021-07-20 | 上海静客网络科技有限公司 | 线上抢购***高并发场景处理方法 |
CN111651631B (zh) * | 2020-04-28 | 2023-11-28 | 长沙证通云计算有限公司 | 高并发视频数据处理方法、电子设备、存储介质及*** |
CN111651631A (zh) * | 2020-04-28 | 2020-09-11 | 长沙证通云计算有限公司 | 高并发视频数据处理方法、电子设备、存储介质及*** |
CN111507729A (zh) * | 2020-04-29 | 2020-08-07 | 广东所能网络有限公司 | 一种基于移动互联网的电子商务风险控制***及方法 |
CN113783799A (zh) * | 2020-06-09 | 2021-12-10 | 马上消费金融股份有限公司 | 一种流量控制方法及装置 |
CN111784458A (zh) * | 2020-06-30 | 2020-10-16 | 中国民航信息网络股份有限公司 | 机票秒杀方法及***、存储介质及电子设备 |
CN111899856A (zh) * | 2020-07-25 | 2020-11-06 | 广州海鹚网络科技有限公司 | 一种医院挂号的风险管控方法、装置、设备和存储介质 |
CN112215622A (zh) * | 2020-09-18 | 2021-01-12 | 南京欣网互联网络科技有限公司 | 一种基于订单信息的风险防控方法及其*** |
CN112669058A (zh) * | 2020-12-21 | 2021-04-16 | 上海多维度网络科技股份有限公司 | 应用程序的数据处理方法以及装置、存储介质、电子装置 |
CN112910947A (zh) * | 2020-12-31 | 2021-06-04 | 南京联创互联网技术有限公司 | 一种基于lua的高并发限流秒杀技术 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105160572A (zh) | 控制订单生成的装置、方法及秒杀*** | |
CN108897615B (zh) | 秒杀请求处理方法、应用服务器集群及存储介质 | |
CN104767716B (zh) | 业务请求处理方法及装置 | |
CN104599153B (zh) | 商品推荐方法、商品推荐服务器及商品推荐终端 | |
CN104980468A (zh) | 处理业务请求的方法、装置及*** | |
CN109949135A (zh) | 高并发交易请求处理方法、***、设备及存储介质 | |
CN106101080A (zh) | 页面访问控制方法和装置 | |
CN108173937A (zh) | 访问控制方法和装置 | |
CN108112038B (zh) | 一种控制访问流量的方法及装置 | |
CN101588344A (zh) | 一种网络***中控制同一帐户登录的***及方法 | |
CN107093038A (zh) | 配送方式选择方法和装置 | |
CN106056437A (zh) | 一种订单管理方法及*** | |
CN108933829A (zh) | 一种负载均衡方法及装置 | |
CN105591743A (zh) | 通过用户终端的设备运行特征进行身份鉴权的方法及装置 | |
AU2016373251A1 (en) | Method for performing inter-system service operation, service platform, and target system | |
CN104980925A (zh) | 用户请求的认证方法和装置 | |
CN105335883A (zh) | 一种进行订单处理的方法和装置 | |
CN105302907A (zh) | 一种请求的处理方法及装置 | |
CN112991064B (zh) | 业务处理方法、装置、计算机设备和存储介质 | |
CN104519069A (zh) | 一种拦截资源请求的方法和装置 | |
CN106651527A (zh) | 多进程的订单信息处理方法 | |
CN106209731A (zh) | 会话业务处理方法及装置 | |
US20100040222A1 (en) | Queuing System, Method And Device | |
CN108512745A (zh) | 信息传播方法与***、服务器及计算机可读存储介质 | |
CN107392518A (zh) | 一种超市管理*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151216 |