一种控制红包的方法以及系统技术方案

技术编号:14273692 阅读:80 留言:0更新日期:2016-12-23 18:21
本发明专利技术提供一种控制红包的方法,服务器将红包分为限定个子红包,设置每个子红包的金额以及序列值;服务器根据用户的先后顺序,依次将子红包的序列值分配给用户;根据序列值将子红包的金额分配给对应的用户;本发明专利技术还提供一种控制红包的系统;使得处理速度加快,并降低了数据库压力。

【技术实现步骤摘要】

本专利技术涉及一种控制红包的方法以及系统
技术介绍
在当今互联网行业高速发展的时代,抢红包这种线上的沟通交友方式,已经越来越受到广大人民群众的追捧;当大量用户争抢同一个红包的操作时,访问量的上升,多进程的开辟,此时相对应于服务器则需要较高的性能要求和网络质量。在抢红包的高峰期,存在着红包个数少,抢红包用户多的情况。在此情况下,存在着同一时刻多用户抢同一个红包,或者已经被抢的红包还没来得及修改红包状态极有可能被其他用户再次争抢。因此,如何让红包有序的被用户获取、避免每次争抢红包时获取数据的不一致是红包系统中主要处理的核心问题。
技术实现思路
本专利技术要解决的技术问题,在于提供一种控制红包的方法以及系统,使得处理速度加快,并降低了数据库压力。本专利技术之一是这样实现的:一种控制红包的方法,包括如下步骤:步骤1、服务器将红包分为限定个子红包,设置每个子红包的金额以及序列值;步骤2、服务器根据用户的先后顺序,依次将子红包的序列值分配给用户;步骤3、根据序列值将子红包的金额分配给对应的用户。进一步地,所述步骤1进一步具体为:服务器将红包分为限定个子红包,设置每个子红包的金额以及序列值,并存入服务器数据缓存中。进一步地,所述步骤2进一步具体为:服务器根据用户的先后顺序,将一子红包的序列值分配给一用户,之后进入步骤3;或者服务器根据用户的先后顺序,依次将限定个数的子红包的序列值分配给限定个数的用户。进一步地,所述步骤3进一步具体为:服务器开启一进程,并开启共享内存锁,之后根据序列值为用户分配子红包的金额,之后服务器关闭共享内存锁;若存在子红包未分配,则进入步骤2。本专利技术之二是这样实现的:一种控制红包的系统,包括如下模块:设置模块,服务器将红包分为限定个子红包,设置每个子红包的金额以及序列值;分配序列值模块,服务器根据用户的先后顺序,依次将子红包的序列值分配给用户;控制红包模块,根据序列值将子红包的金额分配给对应的用户。进一步地,所述设置模块进一步具体为:服务器将红包分为限定个子红包,设置每个子红包的金额以及序列值,并存入服务器数据缓存中。进一步地,所述分配序列值模块进一步具体为:服务器根据用户的先后顺序,将一子红包的序列值分配给一用户,之后进入步骤3;或者服务器根据用户的先后顺序,依次将限定个数的子红包的序列值分配给限定个数的用户。进一步地,所述控制红包模块进一步具体为:服务器开启一进程,并开启共享内存锁,之后根据序列值为用户分配子红包的金额,之后服务器关闭共享内存锁;若存在子红包未分配,则进入分配序列值模块。本专利技术具有如下优点:本专利技术一种控制红包的方法以及系统,规避了mysql数据库在高并发时,使用加锁操作,大幅降低数据库的性能,吞吐量下降;在资源端,将红包信息cache在数据缓存里,避免第一级逻辑判断时对数据库大量的访问锁操作,分配的资源,减少数据库的负担;之后通过调用子进程,批量串行处理并发的红包数据,之后在与mysql链接,实行数据的更新,达到无锁等待,大幅提升性能。附图说明下面参照附图结合实施例对本专利技术作进一步的说明。图1为本专利技术方法执行流程图。图2为本专利技术系统的原理框图。图3为本专利技术红包与子红包的关系示意图。具体实施方式如图1和图3所示,本专利技术控制红包的方法,包括如下步骤:步骤1、服务器将红包分为限定个子红包,设置每个子红包的金额以及序列值,并存入服务器数据缓存中;步骤2、服务器根据用户的先后顺序,将一子红包的序列值分配给一用户,之后进入步骤3;或者服务器根据用户的先后顺序,依次将限定个数的子红包的序列值分配给限定个数的用户;步骤3、服务器开启一进程,并开启共享内存锁,之后根据序列值为用户分配子红包的金额,之后服务器关闭共享内存锁;若存在子红包未分配(即服务器数据缓存中设有子红包的库存量,该库存量不为零时表示存在子红包未分配),则进入步骤2。如图2和图3所示,本专利技术控制红包的系统,包括如下模块:设置模块,服务器将红包分为限定个子红包,设置每个子红包的金额以及序列值,并存入服务器数据缓存中;分配序列值模块,服务器根据用户的先后顺序,将一子红包的序列值分配给一用户,之后进入步骤3;或者服务器根据用户的先后顺序,依次将限定个数的子红包的序列值分配给限定个数的用户;控制红包模块,服务器开启一进程,并开启共享内存锁,之后根据序列值为用户分配子红包的金额,之后服务器关闭共享内存锁;若存在子红包未分配,则进入分配序列值模块。数据库中建立红包维度表,包含发包者、库存、总金额、订单等,相关红包信息的表;数据库中建立抢红包记录表,子红包序列值、红包ID、子红包金额、分配情况等;在服务器数据缓存中处理好之后,再将两个数据库中的表进行修改,达到无锁等待,大幅提升性能,并降低数据库的压力。虽然以上描述了本专利技术的具体实施方式,但是熟悉本
的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本专利技术的范围的限定,熟悉本领域的技术人员在依照本专利技术的精神所作的等效的修饰以及变化,都应当涵盖在本专利技术的权利要求所保护的范围内。本文档来自技高网
...
一种控制红包的方法以及系统

【技术保护点】
一种控制红包的方法,其特征在于:包括如下步骤:步骤1、服务器将红包分为限定个子红包,设置每个子红包的金额以及序列值;步骤2、服务器根据用户的先后顺序,依次将子红包的序列值分配给用户;步骤3、根据序列值将子红包的金额分配给对应的用户。

【技术特征摘要】
1.一种控制红包的方法,其特征在于:包括如下步骤:步骤1、服务器将红包分为限定个子红包,设置每个子红包的金额以及序列值;步骤2、服务器根据用户的先后顺序,依次将子红包的序列值分配给用户;步骤3、根据序列值将子红包的金额分配给对应的用户。2.根据权利要求1所述的一种控制红包的方法,其特征在于:所述步骤1进一步具体为:服务器将红包分为限定个子红包,设置每个子红包的金额以及序列值,并存入服务器数据缓存中。3.如权利要求1所述的一种控制红包的方法,其特征在于:所述步骤2进一步具体为:服务器根据用户的先后顺序,将一子红包的序列值分配给一用户,之后进入步骤3;或者服务器根据用户的先后顺序,依次将限定个数的子红包的序列值分配给限定个数的用户。4.如权利要求3所述的一种控制红包的方法,其特征在于:所述步骤3进一步具体为:服务器开启一进程,并开启共享内存锁,之后根据序列值为用户分配子红包的金额,之后服务器关闭共享内存锁;若存在子红包未分配,则进入步骤2。5.一种控制红包的系...

【专利技术属性】
技术研发人员:沈文策
申请(专利权)人:福建中金在线信息科技有限公司
类型:发明
国别省市:福建;35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1