资源分配方法、装置、服务器及系统制造方法及图纸

技术编号:15724654 阅读:107 留言:0更新日期:2017-06-29 10:49
本申请公开了一种资源分配方法、装置、服务器及系统,为共享资源的每一个子资源创建索引编号,并记录在数据库中;每接收到一个用户的资源抢占请求,进行一次计数运算更新计数数值;根据更新之前或更新之后的计数数值对应的索引编号,确定为所述用户分配的子资源,并更新所述数据库中所述子资源的抢占记录。本申请实施例降低了数据库的承受压力,提高了系统性能,保证了资源分配不受影响。

【技术实现步骤摘要】
资源分配方法、装置、服务器及系统
本申请属于网络
,具体地说,涉及一种资源分配方法、装置、服务器及系统。
技术介绍
随着计算机技术以及网络技术的发展、数据、信息、带宽、存储空间、甚至用户资金等均可以视为一种资源,由于与互联网相关或者经由互联网共享获得,因此也被称为网络资源。网络资源的分配方式以及使用方式等越来越受到人们关注。在一个资源分配的实际应用中,资源提供方可以提供一个共享资源,共享资源可以划分为N份子资源,由多个用户以抢占方式进行资源分配。每一个用户抢占一份子资源。为了方便进行资源分配,现有技术中,会在数据库中创建共享资源的每一个子资源的抢占记录,每接收到一个用户针对所述共享资源的资源抢占请求时,首先从数据库中进行查询,获得未抢占的子资源,随机选择一个未抢占的子资源作为为所述用户分配的子资源,并在数据库更新所述子资源的抢占记录。由上述描述中,现有技术中进行资源分配时,需要多次访问数据库,导致数据库的承受压力很大,特别是在实际应用中,共享资源可能会有多个,存在大量的并发访问数据库的情况,进一步增加的数据库的承受压力,从而可能会影响系统运行,影响资源分配。
技术实现思路
有鉴于此,本申请提供了一种资源分配方法、装置、服务器及系统,降低了数据库的承受压力,提高了系统运行,保证了资源分配不受影响。为了解决上述技术问题,本申请公开了一种资源分配方法,为共享资源的每一个子资源创建索引编号,并记录在数据库中,所述方法包括:每接收到一个用户的资源抢占请求,进行一次计数运算更新计数数值;根据更新之前或更新之后的计数数值对应的索引编号,确定为所述用户分配的子资源,并更新所述数据库中所述子资源的抢占记录。优选地,所述每接收到一个用户的资源抢占请求,进行一次计数运算更新计数数值包括:每接收到一个用户的资源抢占请求,访问计数系统中为所述共享资源创建的计数器,并将所述计数器进行一次计数运算更新所述计数器的计数数值。优选地,所述计数运算为减法计数;所述索引编号为数字编号;所述索引编号按照数值大小进行排列时,相邻的两个索引编号相差1;所述计数器的初始值为最大索引编号与1的和值;所述根据更新之前或更新之后的计数数值对应的索引编号,确定为所述用户分配的子资源包括:判断所述计数器更新之后的计数数值是否小于最小索引编号;如果否,将所述更新之后的计数数值作为为所述用户分配的索引编号,按照所述索引编号确定为所述用户分配的子资源;如果是,确定所述用户资源抢占失败。优选地,所述计数运算为减法计数;所述索引编号为数字编号;所述索引编号按照数值大小进行排列时,相邻的两个索引编号相差1;所述计数器的初始值为最大索引编号;所述每接收到一个用户的资源抢占请求,访问计数系统中为所述共享资源创建的计数器,并将所述计数器进行一次计数运算更新所述计数器的计数数值包括:每接收到一个用户的资源抢占请求,访问计数系统中为所述共享资源创建的计数器,判断所述计数器更新之前的计数数值是否小于最小索引编号;如果否,将所述计数器进行一次计数运算更新所述计数器的计数数值;如果是,确定所述用户资源抢占失败;所述根据更新之前或更新之后的计数数值对应的索引编号,确定为所述用户分配的子资源包括:将所述更新之前的计数数值作为为所述用户分配的索引编号,按照所述索引编号确定为所述用户分配的子资源。优选地,所述计数运算为加法计数;所述索引编号为数字编号;所述索引编号按照数值大小进行排列时,相邻的两个索引编号相差1;所述计数器的初始值为最小索引编号与1的差值;所述根据更新之前或更新之后的计数数值对应的索引编号,确定为所述用户分配的子资源包括:判断所述计数器更新之后的计数数值是否大于最大索引编号;如果否,将所述更新之后的计数数值作为为所述用户分配的索引编号,按照所述索引编号确定为所述用户分配的子资源;如果是,确定所述用户资源抢占失败。优选地,所述所述计数运算为加法计数;所述索引编号为数字编号;所述索引编号按照数值大小进行排列时,相邻的两个索引编号相差1;所述计数器的初始值为最小索引编号;所述每接收到一个用户的资源抢占请求,访问计数系统中为所述共享资源创建的计数器,并将所述计数器进行一次计数运算更新所述计数器的计数数值包括:每接收到一个用户的资源抢占请求,访问计数系统中为所述共享资源创建的计数器,判断所述计数器更新之前的计数数值是否大于最大索引编号;如果否,将所述计数器进行一次计数运算更新所述计数器的计数数值;如果是,确定所述用户资源抢占失败;所述根据更新之前或更新之后的计数数值对应的索引编号,确定为所述用户分配的子资源包括:将所述更新之前的计数数值作为为所述用户分配的索引编号,按照所述索引编号确定为所述用户分配的子资源。优选地,所述每接收到一个用户的资源抢占请求,进行一次计数运算更新计数数值包括:当同时接收到多个用户的资源抢占请求时,将多个资源抢占请求进行排队;按照所述排队顺序,针对每一个资源抢占请求,进行一次计数运算更新计数数值。优选地,所述资源为基于互联网共享的用户资金、保险金、电子优惠券、商品、虚拟货币或者虚拟商品。一种资源分配服务器,包括存储器以及处理组件;所述存储器存储一组或多组程序指令;所述处理组件用于调用所述存储器的一组或多组程序指令,执行如下操作:为共享资源的每一个子资源创建索引编号,并记录在数据库中;每接收到一个用户的资源抢占请求,进行一次计数运算更新计数数值;根据更新之前或更新之后的计数数值对应的索引编号,确定为所述用户分配的子资源,并更新所述数据库中所述子资源的抢占记录。优选地,所述处理组件每接收到一个用户的资源抢占请求,进行一次计数运算更新计数数值具体是:每接收到一个用户的资源抢占请求,访问计数系统中为所述共享资源创建的计数器,并将所述计数器进行一次计数运算更新所述计数器的计数数值。优选地,所述计数运算为减法计数;所述索引编号为数字编号;所述索引编号按照数值大小进行排列时,相邻的两个索引编号相差1;所述计数器的初始值为最大索引编号与1的和值;所述处理组件根据更新之前或更新之后的计数数值对应的索引编号,确定为所述用户分配的子资源具体是:判断所述计数器更新之后的计数数值是否小于最小索引编号;如果否,将所述更新之后的计数数值作为为所述用户分配的索引编号,按照所述索引编号确定为所述用户分配的子资源;如果是,确定所述用户资源抢占失败。优选地,所述计数运算为减法计数;所述索引编号为数字编号;所述索引编号按照数值大小进行排列时,相邻的两个索引编号相差1;所述计数器的初始值为最大索引编号;所述处理组件具体用于:每接收到一个用户的资源抢占请求,访问计数系统中为所述共享资源创建的计数器,判断所述计数器更新之前的计数数值是否小于最小索引编号;如果否,将所述更新之前的计数数值作为为所述用户分配的索引编号,按照所述索引编号确定为所述用户分配的子资源,更新所述数据库中所述子资源的抢占记录;并将所述计数器进行一次计数运算更新所述计数器的计数数值;如果是,确定所述用户资源抢占失败。优选地,所述计数运算为加法计数;所述索引编号为数字编号;所述索引编号按照数值大小进行排列时,相邻的两个索引编号相差1;所述计数器的初始值为最小索引编号与1的差值;所述处理组件根据更新之前或更新之后的计数数本文档来自技高网...
资源分配方法、装置、服务器及系统

【技术保护点】
一种资源分配方法,其特征在于,为共享资源的每一个子资源创建索引编号,并记录在数据库中,所述方法包括:每接收到一个用户的资源抢占请求,进行一次计数运算更新计数数值;根据更新之前或更新之后的计数数值对应的索引编号,确定为所述用户分配的子资源,并更新所述数据库中所述子资源的抢占记录。

【技术特征摘要】
1.一种资源分配方法,其特征在于,为共享资源的每一个子资源创建索引编号,并记录在数据库中,所述方法包括:每接收到一个用户的资源抢占请求,进行一次计数运算更新计数数值;根据更新之前或更新之后的计数数值对应的索引编号,确定为所述用户分配的子资源,并更新所述数据库中所述子资源的抢占记录。2.根据权利要求1所述的方法,其特征在于,所述每接收到一个用户的资源抢占请求,进行一次计数运算更新计数数值包括:每接收到一个用户的资源抢占请求,访问计数系统中为所述共享资源创建的计数器,并将所述计数器进行一次计数运算更新所述计数器的计数数值。3.根据权利要求2所述的方法,其特征在于,所述计数运算为减法计数;所述索引编号为数字编号;所述索引编号按照数值大小进行排列时,相邻的两个索引编号相差1;所述计数器的初始值为最大索引编号与1的和值;所述根据更新之前或更新之后的计数数值对应的索引编号,确定为所述用户分配的子资源包括:判断所述计数器更新之后的计数数值是否小于最小索引编号;如果否,将所述更新之后的计数数值作为为所述用户分配的索引编号,按照所述索引编号确定为所述用户分配的子资源;如果是,确定所述用户资源抢占失败。4.根据根据权利要求2所述的方法,其特征在于,所述计数运算为减法计数;所述索引编号为数字编号;所述索引编号按照数值大小进行排列时,相邻的两个索引编号相差1;所述计数器的初始值为最大索引编号;所述每接收到一个用户的资源抢占请求,访问计数系统中为所述共享资源创建的计数器,并将所述计数器进行一次计数运算更新所述计数器的计数数值包括:每接收到一个用户的资源抢占请求,访问计数系统中为所述共享资源创建的计数器,判断所述计数器更新之前的计数数值是否小于最小索引编号;如果否,将所述计数器进行一次计数运算更新所述计数器的计数数值;如果是,确定所述用户资源抢占失败;所述根据更新之前或更新之后的计数数值对应的索引编号,确定为所述用户分配的子资源包括:将所述更新之前的计数数值作为为所述用户分配的索引编号,按照所述索引编号确定为所述用户分配的子资源。5.根据权利要求2所述的方法,其特征在于,所述计数运算为加法计数;所述索引编号为数字编号;所述索引编号按照数值大小进行排列时,相邻的两个索引编号相差1;所述计数器的初始值为最小索引编号与1的差值;所述根据更新之前或更新之后的计数数值对应的索引编号,确定为所述用户分配的子资源包括:判断所述计数器更新之后的计数数值是否大于最大索引编号;如果否,将所述更新之后的计数数值作为为所述用户分配的索引编号,按照所述索引编号确定为所述用户分配的子资源;如果是,确定所述用户资源抢占失败。6.根据权利要求2所述的方法,其特征在于,所述所述计数运算为加法计数;所述索引编号为数字编号;所述索引编号按照数值大小进行排列时,相邻的两个索引编号相差1;所述计数器的初始值为最小索引编号;所述每接收到一个用户的资源抢占请求,访问计数系统中为所述共享资源创建的计数器,并将所述计数器进行一次计数运算更新所述计数器的计数数值包括:每接收到一个用户的资源抢占请求,访问计数系统中为所述共享资源创建的计数器,判断所述计数器更新之前的计数数值是否大于最大索引编号;如果否,将所述计数器进行一次计数运算更新所述计数器的计数数值;如果是,确定所述用户资源抢占失败;所述根据更新之前或更新之后的计数数值对应的索引编号,确定为所述用户分配的子资源包括:将所述更新之前的计数数值作为为所述用户分配的索引编号,按照所述索引编号确定为所述用户分配的子资源。7.根据权利要求1所述的方法,其特征在于,所述每接收到一个用户的资源抢占请求,进行一次计数运算更新计数数值包括:当同时接收到多个用户的资源抢占请求时,将多个资源抢占请求进行排队;按照所述排队顺序,针对每一个资源抢占请求,进行一次计数运算更新计数数值。8.根据权利要求1所述的方法,其特征在于,所述资源为基于互联网共享的用户资金、保险金、电子优惠券、商品、虚拟货币或者虚拟商品。9.一种资源分配服务器,其特征在于,包括存储器以及处理组件;所述存储器存储一组或多组程序指令;所述处理组件用于调用所述存储器的一组或多组程序指令,执行如下操作:为共享资源的每一个子资源创建索引编号,并记录在数据库中;每接收到一个用户的资源抢占请求,进行一次计数运算更新计数数值;根据更新之前或更新之后的计数数值对应的索引编号,确定为所述用户分配的...

【专利技术属性】
技术研发人员:潘修艳
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1