CN113691586A - 一种资源分发方法、装置、电子设备及存储介质 - Google Patents
一种资源分发方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113691586A CN113691586A CN202110807406.0A CN202110807406A CN113691586A CN 113691586 A CN113691586 A CN 113691586A CN 202110807406 A CN202110807406 A CN 202110807406A CN 113691586 A CN113691586 A CN 113691586A
- Authority
- CN
- China
- Prior art keywords
- resource
- terminal
- amount
- distribution
- target
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开关于一种资源分发方法、装置、电子设备及存储介质,该方法包括:响应于第一终端针对目标资源的资源分发请求,确定第一终端对应的资源账户中资源的资源量得到资源的第一资源量,所述资源包括目标资源;根据所述资源的第一资源量更新第一终端对应的资源快照,该资源快照表征第一终端在最近一次发起资源分发时所对应的资源的第一资源量;根据目标资源的分发资源量生成并存储资源分发记录信息;该资源分发记录信息包括资源分发记录以及资源分发记录对应的分发记录标识;根据第一终端标识和分发记录标识生成资源获取入口信息;将资源获取入口信息返回给第一终端。本公开提高了资源分发中的数据正确性并增强了资源分享的互动性和体验效果。
Description
技术领域
本公开涉及互联网技术领域,尤其涉及一种资源分发方法、装置、电子设备及存储介质。
背景技术
随着互联网技术的发展,用户账户进行资源分享的诉求越来越活跃,通过资源分享可以将用户账户所对应的资源账户中的资源分发给其他用户账户,例如,可以通过资源分享将收集的虚拟业务卡片分发给其他用户账户,通常情况下其他用户账户需要通过分享出来的入口来获取分享的资源。
相关技术中,对于用户账户的一次资源分享,后台服务器会在分享发起时刻即对该用户账户所对应的资源账户进行其所分享的资源的扣除,若该分享的资源未被其他用户账户完全领取,一般会将分享的剩余资源回退给分享方。这种资源分发方式的数据正确性较低,在存在多种分享途径的情况下,错误扣除分享方资源的几率较高,而且相关技术中的资源分发方式对于分享方是有损分享(即在用户账户发起分享时已经将其资源账户中的资源真实扣除),分享的互动性差,体验效果也不友好。
发明内容
本公开提供一种资源分发方法、装置、电子设备及存储介质,以至少解决相关技术中的资源分发方式存在数据正确性低以及分享的互动性和体验差的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种资源分发方法,包括:
响应于第一终端针对目标资源的资源分发请求,确定所述第一终端对应的资源账户中资源的资源量得到所述资源的第一资源量;所述资源分发请求包括所述目标资源的分发资源量和所述第一终端的第一终端标识,所述资源包括所述目标资源;
根据所述资源的第一资源量更新所述第一终端对应的资源快照;所述资源快照表征所述第一终端在最近一次发起资源分发时所对应的所述资源的第一资源量;
根据所述目标资源的分发资源量,生成并存储资源分发记录信息;所述资源分发记录信息包括资源分发记录以及所述资源分发记录对应的分发记录标识;
根据所述第一终端标识和所述分发记录标识,生成资源获取入口信息;
将所述资源获取入口信息返回给所述第一终端。
在一个示例性的实施方式中,所述方法还包括:
接收第二终端响应于针对所述资源获取入口信息触发的资源获取指令,发送的资源获取请求;
根据所述第一终端标识,获取所述第一终端对应的资源快照,以及所述资源账户中所述资源的资源量得到所述资源的第二资源量;
获取所述分发记录标识对应的所述资源分发记录;
根据所述第二资源量、所述资源快照和所述资源分发记录,确定所述第二终端对应的所述目标资源的可获取资源量;所述目标资源的可获取资源量为所述目标资源对应的所述第二资源量、所述第一资源量和所述分发资源量中的最小值;
根据所述第二终端对应的所述目标资源的可获取资源量,将所述第一终端对应的所述目标资源转移给所述第二终端。
在一个示例性的实施方式中,所述根据所述第二终端对应的所述目标资源的可获取资源量,将所述第一终端对应的所述目标资源转移给所述第二终端包括:
根据所述第二终端对应的所述目标资源的可获取资源量,确定所述第二终端对应的所述目标资源的获取资源量;
根据所述第二终端对应的所述目标资源的获取资源量,依次对所述资源分发记录中所述目标资源的分发资源量、所述第一终端对应的资源快照中所述目标资源的第一资源量和所述目标资源的第二资源量进行扣减;
根据所述目标资源所扣减的资源量,更新所述第二终端对应的所述目标资源的资源量。
在一个示例性的实施方式中,所述方法还包括:
获取针对所述目标资源的分发资源量扣减的第一扣减资源量、针对所述目标资源的第一资源量扣减的第二扣减资源量以及针对所述目标资源的第二资源量扣减的第三扣减资源量;
当所述第一扣减资源量、所述第二扣减资源量和所述第三扣减资源量不一致时,确定所述第二扣减资源量与所述第三扣减资源量之间的第一扣减资源量差值,以及所述第一扣减资源量与所述第三扣减资源量之间的第二扣减资源量差值;
对扣减后的所述目标资源的第一资源量增加所述第一扣减资源量差值,以及对扣减后的所述目标资源的分发资源量增加所述第二扣减资源量差值。
在一个示例性的实施方式中,在所述确定所述第一终端对应的资源账户中资源的资源量得到所述资源的第一资源量之前,所述方法还包括:
获取所述第一终端在预设时间段内的资源分发请求的请求次数;
当所述请求次数未超过预设请求次数阈值时,执行所述确定所述第一终端对应的资源账户中资源的资源量得到所述资源的第一资源量的步骤。
在一个示例性的实施方式中,所述确定所述第一终端对应的资源账户中资源的资源量得到所述资源的第一资源量包括:
获取所述第一终端对应的资源账户中资源的资源量;
根据预置分发策略,确定所述资源的保留资源量;
确定所述资源量与所述保留资源量的差值,将所述差值作为所述资源的第一资源量。
在一个示例性的实施方式中,所述资源包括至少一个资源类型;
所述根据所述资源的第一资源量更新所述第一终端对应的资源快照包括:
以所述第一终端标识为键名,查找资源快照集中与所述键名相匹配的目标哈希表;所述资源快照集中的资源快照为哈希表的数据结构;
确定所述目标哈希表中与各所述资源类型相匹配的目标字段;
将所述目标哈希表中所述目标字段的值,更新为相应资源类型的资源对应的第一资源量。
在一个示例性的实施方式中,所述资源分发记录信息以哈希表的数据结构存储,所述哈希表以所述分发记录标识和所述第一终端标识作为键名,所述目标资源的资源类型作为所述键名对应的字段,所述字段的值为相应资源类型的目标资源的分发资源量。
根据本公开实施例的第二方面,提供一种资源分发装置,包括:
第一资源量确定单元,被配置为执行响应于第一终端针对目标资源的资源分发请求,确定所述第一终端对应的资源账户中资源的资源量得到所述资源的第一资源量;所述资源分发请求包括所述目标资源的分发资源量和所述第一终端的第一终端标识,所述资源包括所述目标资源;
资源快照更新单元,被配置为执行根据所述资源的第一资源量更新所述第一终端对应的资源快照;所述资源快照表征所述第一终端在最近一次发起资源分发时所对应的所述资源的第一资源量;
资源分发记录信息生成单元,被配置为执行根据所述目标资源的分发资源量,生成并存储资源分发记录信息;所述资源分发记录信息包括资源分发记录以及所述资源分发记录对应的分发记录标识;
资源获取入口信息生成单元,被配置为执行根据所述第一终端标识和所述分发记录标识,生成资源获取入口信息;
返回单元,被配置为执行将所述资源获取入口信息返回给所述第一终端。
在一个示例性的实施方式中,所述装置还包括:
请求接收单元,被配置为执行接收第二终端响应于针对所述资源获取入口信息触发的资源获取指令,发送的资源获取请求;
第一获取单元,被配置为执行根据所述第一终端标识,获取所述第一终端对应的资源快照,以及所述资源账户中所述资源的资源量得到所述资源的第二资源量;
第二获取单元,被配置为执行获取所述分发记录标识对应的所述资源分发记录;
可获取资源量确定单元,被配置为执行根据所述第二资源量、所述资源快照和所述资源分发记录,确定所述第二终端对应的所述目标资源的可获取资源量;所述目标资源的可获取资源量为所述目标资源对应的所述第二资源量、所述第一资源量和所述分发资源量中的最小值;
资源转移单元,被配置为执行根据所述第二终端对应的所述目标资源的可获取资源量,将所述第一终端对应的所述目标资源转移给所述第二终端。
在一个示例性的实施方式中,所述资源转移单元包括:
获取资源量确定单元,被配置为执行根据所述第二终端对应的所述目标资源的可获取资源量,确定所述第二终端对应的所述目标资源的获取资源量;
扣减单元,被配置为执行根据所述第二终端对应的所述目标资源的获取资源量,依次对所述资源分发记录中所述目标资源的分发资源量、所述第一终端对应的资源快照中所述目标资源的第一资源量和所述目标资源的第二资源量进行扣减;
资源量更新单元,被配置为执行根据所述目标资源所扣减的资源量,更新所述第二终端对应的所述目标资源的资源量。
在一个示例性的实施方式中,所述资源转移单元还包括:
扣减资源量获取单元,被配置为执行获取针对所述目标资源的分发资源量扣减的第一扣减资源量、针对所述目标资源的第一资源量扣减的第二扣减资源量以及针对所述目标资源的第二资源量扣减的第三扣减资源量;
扣减资源量差值确定单元,被配置为执行当所述第一扣减资源量、所述第二扣减资源量和所述第三扣减资源量不一致时,确定所述第二扣减资源量与所述第三扣减资源量之间的第一扣减资源量差值,以及所述第一扣减资源量与所述第三扣减资源量之间的第二扣减资源量差值;
回滚单元,被配置为执行对扣减后的所述目标资源的第一资源量增加所述第一扣减资源量差值,以及对扣减后的所述目标资源的分发资源量增加所述第二扣减资源量差值。
在一个示例性的实施方式中,所述装置还包括:
第三获取单元,被配置为执行获取所述第一终端在预设时间段内的资源分发请求的请求次数;
执行单元,被配置为执行当所述请求次数未超过预设请求次数阈值时,执行所述确定所述第一终端对应的资源账户中资源的资源量得到所述资源的第一资源量的步骤。
在一个示例性的实施方式中,所述第一资源量确定单元包括:
第四获取单元,被配置为执行获取所述第一终端对应的资源账户中资源的资源量;
保留资源量确定单元,被配置为执行根据预置分发策略,确定所述资源的保留资源量;
差值确定单元,被配置为执行确定所述资源量与所述保留资源量的差值,将所述差值作为所述资源的第一资源量。
在一个示例性的实施方式中,所述资源包括至少一个资源类型;所述资源快照更新单元包括:
查找单元,被配置为执行以所述第一终端标识为键名,查找资源快照集中与所述键名相匹配的目标哈希表;所述资源快照集中的资源快照为哈希表的数据结构;
目标字段确定单元,被配置为执行确定所述目标哈希表中与各所述资源类型相匹配的目标字段;
值更新单元,被配置为执行将所述目标哈希表中所述目标字段的值,更新为相应资源类型的资源对应的第一资源量。
在一个示例性的实施方式中,所述资源分发记录信息以哈希表的数据结构存储,所述哈希表以所述分发记录标识和所述第一终端标识作为键名,所述目标资源的资源类型作为所述键名对应的字段,所述字段的值为相应资源类型的目标资源的分发资源量。
根据本公开实施例的第三方面,提供一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现上述第一方面的资源分发方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述第一方面的资源分发方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,包括计算机程序,所述计算机程序/指令被处理器执行时实现上述第一方面的资源分发方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
通过响应于第一终端针对目标资源的资源分发请求,根据该第一终端对应的资源账户中资源的资源量更新该第一终端对应的资源快照,从而该资源快照表征所述第一终端在最近一次发起资源分发时所对应的所述资源的第一资源量,并基于该资源分发请求中目标资源的分发资源量生成资源分发记录信息,该资源分发记录信息包括分发记录标识和对应的资源分发记录,进而根据该第一终端的终端标识和分发记录标识生成返回给第一终端的资源获取入口信息,从而在第一终端发起资源分享时不对其对应的资源进行扣减,使得第一终端可以发起多次资源分享,且每次发起分享都会对应不同的资源获取入口信息,而各资源获取入口信息之间又受第一终端对应的资源快照的限制,在提高资源分发中数据正确性的同时,增强了资源分享的互动性和体验效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种资源分发方法的应用环境示意图;
图2是根据一示例性实施例示出的一种资源分发方法的流程图;
图3是根据一示例性实施例示出的另一种资源分发方法的流程图;
图4是根据一示例性实施例示出的另一种资源分发方法的流程图;
图5是根据一示例性实施例示出的根据第二终端对应的目标资源的可获取资源量将第一终端对应的所述目标资源转移给第二终端的一种流程图;
图6是根据一示例性实施例示出的根据第二终端对应的目标资源的可获取资源量将第一终端对应的所述目标资源转移给第二终端的另一种流程图;
图7是根据一示例性实施例示出的一种资源分发装置的框图;
图8是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
需要说明的是,本公开所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等),均为经用户授权或者经过各方充分授权的信息。
相关技术中,对于终端用户账户的一次资源分享,后台服务器会在分享发起时刻即队对该用户账户所对应的资源账户进行其所分享的资源的扣除,其他用户账户通过分享出来的入口来获取分享的资源,若该分享的资源未被其他用户账户完全领取,后台服务器会将分享的剩余资源回退给分享者。这种资源分发方式对于分享发为有损分享(即在用户账户发起分享时已经将其资源账户中的资源真实扣除),虽然可以在一定时间后采取回退机制给分享者进行额度补回,但是随着依赖增多,数据正确性难保证,分享的互动性差,体验效果也不友好。
另外,目前用户账户可以分享的渠道非常多,例如可以通过微信分享、支付宝分享、面对面分享、扫码分享等,在上述资源分发方式中后台服务器很难准确的判定一次“成功”的分享,从而错误扣除分享者资源的几率较高,数据正确性较低。
基于此,本公开实施例提供了一种资源分发方法,通过响应于第一终端针对目标资源的资源分发请求确定该第一终端对应的资源账户中资源的资源量得到该资源的第一资源量,并根据该资源的第一资源量更新第一终端对应的资源快照,从而该资源快照表征所述第一终端在最近一次发起资源分发时所对应的所述资源的第一资源量,并根据资源分发请求中目标资源的分发资源量生成并存储资源分发记录信息,该资源分发记录信息包括资源分发记录以及其对应的分发记录标识,进而根据第一终端的终端标识和该分发记录标识生成资源获取入口信息并返回给该第一终端,从而在第一终端发起分享时不对其对应的资源进行扣减,如此第一终端可以发起多次分享,且每次发起分享都会对应不同的资源获取入口信息,而各资源获取入口信息之间又受第一终端对应的资源快照的限制,在提高数据正确性的同时增强了资源分享的互动性和体验效果。
请参阅图1,其所示为根据一示例性实施例示出的一种资源分发方法的应用环境示意图,该应用环境可以包括:第一终端110、第二终端120和服务器130。
第一终端110和第二终端120可以包括但不限于智能手机、台式计算机、平板电脑、笔记本电脑、智能音箱、数字助理、增强现实(augmented reality,AR)/虚拟现实(virtualreality,VR)设备、智能可穿戴设备等类型的电子设备。上述第一终端110和第二终端120安装和运行有资源分发功能的应用程序,该应用程序可以是社交类应用程序、直播类应用程序或者视频类应用程序等。第一终端110和第二终端120的用户账户可以通过预先注册的用户信息登录上述应用程序,该用户信息可以包括账号和密码。
服务器130用于提供资源分发的后台服务,服务器130可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。
在一个示例性的实施方式中,服务器130包括:资源分发服务器、资源管理服务器、第一存储服务器和第二存储服务器。
资源分发服务器可以是为第一终端110和第二终端120提供资源分发服务的服务器,其中,第一终端110可以是资源分发的发起方,第二终端120可以是分发资源的获取方。实际应用中,针对第一终端110发起的资源分发,可以有多个第二终端120来竞争抢该分发的资源。资源管理服务器可以用于管理各终端的资源。第一存储服务器可以用于存储各终端对应的资源快照。第二存储服务器可以用于存储对应每个资源分发请求的资源分发记录信息。
本公开实施例中,上述第一终端110、第二终端120和服务器130间可以有线或无线通信方式进行直接或间接地连接,本公开在此不做限制。
需要说明的是,本公开实施例中的资源可以包括可用于进行商品或服务兑换的资源,比如电子货币、积分、金豆、礼金券、兑换券、优惠券、礼品卡、仅供某一平台内使用的虚拟币,还可以是游戏道具或者可供在游戏中换取游戏道具的钻石等等,本公开实施例对此不作具体限定。
图2是根据一示例性实施例示出的一种资源分发方法的流程图,如图2所示,以该资源分发方法用于图1的服务器为例,包括以下步骤。
在步骤S201中,响应于第一终端针对目标资源的资源分发请求,确定所述第一终端对应的资源账户中资源的资源量得到所述资源的第一资源量。
其中,所述资源分发请求包括目标资源的分发资源量和所述第一终端的第一终端标识,所述资源包括所述目标资源,目标资源是指第一终端将要分发的资源。第一终端的第一终端标识可以是第一终端对应的用户账号。
具体的,第一终端可以响应于用户账户对目标页面中目标资源的资源分发指令,向服务器发送资源分发请求,该目标页面可以是用户账户在第一终端中浏览的页面。示例性的,该资源分发指令可以通过触发目标页面中的资源分发控件产生。
第一终端对应的资源账户用于存储该第一终端所拥有的资源,该资源可以包括至少一个资源类型的资源,目标资源可以是指该至少一个资源类型中的目标资源类型的资源,该目标资源类型可以是一个也可以是多个,具体由第一终端的用户账户根据实际分发需求确定。
所述资源的第一资源量是指第一终端所拥有的资源中允许分发的资源的资源数量,该允许分发的资源的资源数量可以根据实际应用中的预置分发策略来确定,若预置分发策略为不进行分发额度限制,则第一资源量可以是第一终端对应的资源的资源量,也即允许第一终端将其资源账户中的资源全部分发,若预置分发策略为进行分发额度限制,则第一资源量可以根据预置分发策略中配置的保留资源量来确定,从而提高对允许分发的资源量控制的灵活性。
基于此,在一个示例性的实施方式中,上述确定所述第一终端对应的资源账户中资源的资源量得到所述资源的第一资源量可以包括:
获取所述第一终端对应的资源账户中资源的资源量;
根据预置分发策略,确定所述资源的保留资源量;
确定所述资源量与所述保留资源量的差值,将所述差值作为所述资源的第一资源量。
实际应用中,第一终端对应的资源账户中资源的资源量是实时变化的,如增加或者减少,因此,服务器在接收到第一终端针对目标资源的资源分发请求时所确定的所述资源的第一资源量也是实时变化的,也即针对第一终端不同时刻的资源分发请求,服务器所确定的允许该第一终端分发的资源量也是实时变化的,也即第一终端每发起一次资源分发,都会有对应该次资源分发的资源的第一资源量,该第一资源量表征了第一终端在该次资源分发中所能够分发的资源的额度。
在一个示例性的实施方式中,为了提高资源分发的成功率,在确定第一终端对应的资源账户中资源的资源量得到所述资源的第一资源量之后,还可以对其中目标资源的第一资源量与分发资源量进行比对,在目标资源的第一资源量超过分发资源量时才允许第一终端对该目标资源进行分发。
在步骤S203中,根据所述资源的第一资源量更新所述第一终端对应的资源快照。
其中,所述资源快照表征所述第一终端在最近一次发起资源分发时所对应的所述资源的第一资源量。
本公开实施例中,可以维护一个资源快照集,该资源快照集中为每个资源分发的发起方(即第一终端)存储一个对应的资源快照,该资源快照表征该发起方最近一次发起资源分发时对应的资源的第一资源量。基于此,服务器在接收到第一终端的资源分发请求时,需要基于当前确定的该第一终端对应的资源的第一资源量对该第一终端对应的资源快照进行更新。
为了提高在高并发的资源分发请求情况下的处理效率,在一个示例性的实施方式中,资源快照集中的资源快照可以为哈希表的数据结构,每个哈希表包括键名(key)、字段(filed)和字段的值(value),键名(key)可以是发起资源分发的终端的终端标识,字段(filed)可以是该终端对应的资源的资源类型,字段的值(value)可以是相应资源类型的资源的资源量。
基于此,上述根据所述资源的第一资源量更新所述第一终端对应的资源快照可以包括:
以所述第一终端标识为键名,查找资源快照集中与所述键名相匹配的目标哈希表;
确定所述目标哈希表中与各所述资源类型相匹配的目标字段;
将所述目标哈希表中所述目标字段的值,更新为相应资源类型的资源对应的第一资源量。其中,相应资源类型是指匹配该目标字段的资源类型。
在步骤S205中,根据所述目标资源的分发资源量,生成并存储资源分发记录信息。
其中,所述资源分发记录信息包括资源分发记录以及所述资源分发记录对应的分发记录标识。资源分发记录表征目标资源的分发资源量,分发记录标识用于唯一标识一个资源分发记录,可以理解的,由于第一终端每发起一次资源分发,服务器都会生成相应的资源分发记录信息,从而分发记录标识也可以标识第一终端的一次资源分发。
对于分发记录标识,可以采用UUID(Universally Unique Identifier,通用唯一识别码)标准生成,也可以采用分布式标识生成服务,为了提升分发记录标识生成的效率以提升资源分发的效率,在具体的实施方式中,可以优选的采用UUID标准生成分发记录标识。
为了提高在高并发的资源分发请求情况下的处理效率,在一个示例性的实施方式中,该资源分发记录信息可以哈希表的数据结构存储,该哈希表可以分发记录标识和第一终端标识作为键名,以目标资源的资源类型作为该键名对应的字段,该哈希表中字段的值为相应资源类型的目标资源的分发资源量。
在步骤S207中,根据所述第一终端标识和所述分发记录标识,生成资源获取入口信息。
其中,该资源获取入口信息中包含第一终端标识和分发记录标识,实际应用中,资源获取入口信息可以呈现为链接、图片或者二维码等。
在一个示例性的实施方式中,为了提高信息传输的安全性,在生成资源获取入口信息时还可以对资源获取入口信息进行加密处理,具体加密处理所采用的加密算法可以是对称加密算法,也可以是非对称加密算法,本公开对此不作具体限定。
在步骤S209中,将所述资源获取入口信息返回给所述第一终端。
第一终端在接收到资源获取入口信息后,可以将该资源获取入口信息发送给至少一个第二终端,从而该至少一个第二终端可以通过该资源获取入口信息来竞争获取第一终端在该次资源分发中所分发的资源。
可以理解的,上述步骤S203和步骤S205也可以在步骤S201之后同时执行,并不受上述执行顺序的限制。
由本公开实施例的上述技术方案可见,在第一终端发起资源分发时并不对其资源账户中的资源进行扣减,从而第一终端可以发起多次资源分发,且每次发起的资源分发都会对应不同的资源获取入口信息,而各资源获取入口信息之间又受第一终端对应的资源快照的限制,由于第一终端对应的资源快照在第一终端每次发起资源分发时都会更新,从而该资源快照能够表征第一终端最近一次发起资源分发时所对应的资源的第一资源量。基于该资源快照的限制可以在提高资源分发的数据正确性的同时,增强资源分享的互动性和体验效果。
由于本公开实施例的资源分发方法在第一终端发起资源分发时并不扣减其资源账户中的资源,因此第一终端可以进行多次资源分发,且每发起一次资源分发都生成相关的数据,如果不加以限制会占用服务器非常大的存储资源,而且容易受到黑客攻击。基于此,在一个示例性的实施方式中,如图3所示的另一种资源分发方法的流程图,在确定所述第一终端对应的资源账户中资源的资源量得到所述资源的第一资源量之前,该方法还可以包括:
在步骤S301中,获取所述第一终端在预设时间段内的资源分发请求的请求次数。
具体的,服务器响应于第一终端针对目标资源的资源分发请求,先获取该第一终端在预设时间段内的资源分发请求的请求次数,其中,预设时间段可以根据实际需要进行设定,例如预设时间段可以是一天、三天等。
在步骤S303中,判断所述请求次数是否超过预设请求次数阈值。
其中,预设请求次数阈值可以根据实际应用中服务器的存储资源大小来设定,一般预设请求次数阈值设置的越大,对服务器的存储资源占用也越大,示例性的,预设请求次数阈值可以是20次/天。
服务器获取第一终端在预设时间段内的资源分发请求的请求次数,判断该请求次数是否超过预设请求次数阈值,若判断的结果是请求次数未超过预设请求次数阈值,则允许该第一终端在预设时间段内继续发起资源分发,此时可以执行确定所述第一终端对应的资源账户中资源的资源量得到所述资源的第一资源量的步骤;反之,若判断的结果是请求次数超过预设请求次数阈值,则表明该第一终端在预设时间段内的资源分发次数过多,此时可以禁止该第一终端在预设时间段内继续发起资源分发。
本公开实施例通过在第一终端发起资源分发时对其在预设时间段内的请求次数进行配额检查,可以避免在资源分发过程中对服务器存储资源的过多占用,同时也能防止黑客攻击。
图4是根据一示例性实施例示出的另一种资源分发方法的流程图,如图4所示,在步骤S209之后,该方法还可以包括:
在步骤S211中,接收第二终端响应于针对所述资源获取入口信息触发的资源获取指令,发送的资源获取请求。
具体的,针对所述资源获取入口信息的触发方式可以是点击操作、扫描操作等与该资源获取入口信息的呈现形式相匹配的方式。
第二终端响应于针对所述资源获取入口信息触发的资源获取指令时,可以获取该资源获取入口信息中的第一终端标识和分发记录标识,并基于该第一终端标识和分发记录标识生成资源获取请求,进而将该资源获取请求发送给服务器。
在一个示例性的实施方式中,在资源获取入口信息为加密的情况下,第二终端响应于针对所述资源获取入口信息触发的资源获取指令,可以先向服务器发送解密请求,服务器响应于该解密请求向该第二终端返回相应的解密秘钥,从而第二终端基于该解密秘钥对该资源获取入口信息进行解密处理,并从解密后的资源获取入口信息中获取第一终端标识和分发记录标识,基于该第一终端标识和分发记录标识生成资源获取请求,进而将该资源获取请求发送给服务器。
服务器接收该资源获取请求,解析该资源获取请求可以得到对应的第一终端标识和分发记录标识。
在步骤S213中,根据所述第一终端标识,获取所述第一终端对应的资源快照,以及所述资源账户中所述资源的资源量得到所述资源的第二资源量。
实际应用中,第一终端发起某次资源分发的时刻与第二终端请求获取该次资源分发所分发的资源的时刻并不在同一时刻,比如第一终端发起某次资源分发的时刻为t1,第二终端请求获取该次资源分发所分发的资源的时刻为t2,则所述资源的第二资源量是指在t2时刻该第一终端对应的资源账户中允许分发的资源的资源量,也即第二资源量可以理解为在服务器接收到资源获取请求的当前时刻第一终端对应的资源账户中允许分发的资源的资源量。
在一个示例性的实施方式中,所述资源的第二资源量可以为当前时刻第一终端对应的资源账户中资源的资源量与资源的保留资源量的差值,资源的保留资源量可以基于预置分发策略确定。
在步骤S215中,获取所述分发记录标识对应的所述资源分发记录。
在步骤S217中,根据所述第二资源量、所述资源快照和所述资源分发记录,确定所述第二终端对应的所述目标资源的可获取资源量。
其中,所述目标资源的可获取资源量为所述目标资源对应的第二资源量、第一资源量和所述分发资源量中的最小值。目标资源的可获取资源量表征可供第二终端竞争抢的目标资源的资源量。
举例而言,所述资源的第二资源量表示为A={s1:6,s2:9,s3:0},其中,s1、s2、s3代表三个不同资源类型的资源,第一终端对应的资源快照表示为B={s1:23,s2:7,s3:11},假设上述分发记录标识对应的资源分发记录表示为C={s1:2,s2:11,s3:17},则第二终端对应的目标资源的可获取资源量为D=min{A,B,C}={s1:2,s2:7,s3:0}。
在步骤S219中,根据所述第二终端对应的所述目标资源的可获取资源量,将所述第一终端对应的所述目标资源转移给所述第二终端。
本公开实施例的上述目标资源的可获取资源量可以反映第一终端对应的资源账户中资源的资源量的变动,通过将目标资源对应的第二资源量、第一资源量和分发资源量中的最小值作为目标资源的可获取资源量可以避免无效的资源转移或者将第一终端不具有资源分发意图的资源(某资源类型的资源的第二资源量超过资源快照中该资源类型的资源的第一资源量的部分)转移给第二终端,保证了数据的正确性。
为了确保在高并发场景下的资源分发效率和数据的准确性,在一个示例性的实施方式中,在根据所述第二终端对应的所述目标资源的可获取资源量,将所述第一终端对应的所述目标资源转移给所述第二终端时,可以包括图5中的以下步骤:
在步骤S501中,根据所述第二终端对应的所述目标资源的可获取资源量,确定所述第二终端对应的所述目标资源的获取资源量。
其中,第二终端对应的目标资源的获取资源量表征第二终端能够获取到的资源量,可以理解的,该目标资源的获取资源量不超过可获取资源量。
实际应用中,服务器会根据预置资源获取策略来确定该第二终端从目标资源的可获取资源量中能够获取到的获取资源量。在一个示例性的实施方式中,预置资源获取策略可以是第二终端仅可以从目标资源中获取其没有的资源,且获取的资源数量为预设数量个(如1个资源量),以前述第二终端对应的目标资源的可获取资源量为D=min{A,B,C}={s1:2,s2:7,s3:0}为例,该第二终端对应的所述目标资源的获取资源量可以为E={s1:1,s2:1,s3:0}。
在步骤S503中,根据所述第二终端对应的所述目标资源的获取资源量,依次对所述资源分发记录中所述目标资源的分发资源量、所述第一终端对应的资源快照中所述目标资源的第一资源量和所述目标资源的第二资源量进行扣减。
具体的,服务器依次进行以下三次扣减:
第一次扣减,从所述资源分发记录中目标资源的分发资源量中扣减上述获取资源量;第二次扣减,从第一终端对应的资源快照中目标资源的第一资源量中扣减上述获取资源量;第三次扣减,从目标资源的第二资源量中扣减上述获取资源量,通过上述多级扣减可以确保数据的正确性。
需要说明的是,在依次进行的上述三次扣减过程中,当前次扣减的目标资源的资源量不超过上一次扣减的该目标资源的资源量。比如第二次扣减的目标资源的资源量为0,则在第三次扣减时对该目标资源扣减的资源量也为0即不进行扣减。
考虑到在分布式环境中,网络异常或并发竞争等情况下,导致有可能一次扣减中存在失败的情况,针对多个第二终端争抢资源激烈的场景,特别是热点并发的竞争,为了保证了在高并发情况下的高性能和严格的数据正确性,在一个示例性的实施方式中,可以计算各次扣减成功的情况,针对扣减不成功的情况进行回滚,基于此,如图6所示,该方法还可以包括:
在步骤S601中,获取针对所述目标资源的分发资源量扣减的第一扣减资源量、针对所述目标资源的第一资源量扣减的第二扣减资源量以及针对所述目标资源的第二资源量扣减的第三扣减资源量。
在步骤S603中,判断所述第一扣减资源量、所述第二扣减资源量和所述第三扣减资源量是否一致。
在步骤S605中,若不一致,则确定所述第二扣减资源量与所述第三扣减资源量之间的第一扣减资源量差值,以及所述第一扣减资源量与所述第三扣减资源量之间的第二扣减资源量差值。
在步骤S607中,对扣减后的所述目标资源的第一资源量增加所述第一扣减资源量差值,以及对扣减后的所述目标资源的分发资源量增加所述第二扣减资源量差值。
具体的,在根据目标资源的获取资源量,依次对所述资源分发记录中所述目标资源的分发资源量、所述第一终端对应的资源快照中所述目标资源的第一资源量和所述目标资源的第二资源量进行扣减之后,可以判断各次对于目标资源扣减的资源量是否一致,若不一致,表明存在少扣减的情形,而少扣减则表明该次扣减不成功,此时扣减成功的相对于该扣减不成功的而言,则为存在多扣减的情形,对于存在多扣减情形的那次扣减可以对多扣减的资源量进行回滚。
举例而言,资源分发记录表示为C={s1:6,s2:9,s3:0},第一终端对应的资源快照表示为B={s1:23,s2:7,s3:11},第一终端对应的资源账户中资源的第二资源量表示为A={s1:2,s2:11,s3:17},目标资源的可获取资源量表示为D=min{A,B,C}={s1:2,s2:7,s3:0},第二终端对应的目标资源的获取资源量表示为E={s1:1,s2:1,s3:0},在执行多级扣减操作时如下:
第一次扣减时无其他竞争者即C={s1:6,s2:9,s3:0},则从C={s1:6,s2:9,s3:0}中扣减E={s1:1,s2:1,s3:0}后,该C变为C={s1:5,s2:8,s3:0},该次目标资源扣减的资源量即第一扣减资源量为s1:1,s2:1,s3:0;
若第二次扣减时有其他竞争者,导致B中的s1变为0即此时B={s1:0,s2:7,s3:11},则根据E={s1:1,s2:1,s3:0}对B={s1:0,s2:7,s3:11}进行扣减后,该B变为B={s1:0,s2:6,s3:11},该次目标资源扣减的资源量即第二扣减资源量为s1:0,s2:1,s3:0;
若第三次扣减时无其他竞争者即A={s1:2,s2:11,s3:17},则根据E={s1:1,s2:1,s3:0}对A={s1:2,s2:11,s3:17}进行扣减后,该A变为A={s1:2,s2:10,s3:17},该次目标资源扣减的资源量即第三扣减资源量为s1:0,s2:1,s3:0;
由上述目标资源对应的各次扣减的资源量可知,目标资源s1在各次扣减的资源量不一致,第一次扣减的资源量为1,第二次和第三次扣减的资源量为0,则对目标资源s1多扣减的资源量进行回滚,也即将扣减后的C变为C={s1:5+1,s2:8,s3:0},回滚之后可见,第二终端获取到的目标资源的资源量为s1:0,s2:1,s3:0,也即仅仅抢到了第一终端分发的一个数量的目标资源s2。
在步骤S505中,根据所述目标资源所扣减的资源量,更新所述第二终端对应的所述目标资源的资源量。
具体的,目标资源所扣减的资源量是指上述依次扣减中的单次扣减资源量,其表征第二终端所获取或者抢到的资源量,将该扣减的资源量增加到第二终端对应的目标资源的资源量中,从而实现了将目标资源的转移。
需要说明的是,若存在回滚操作,则目标资源所扣减的资源量为回滚后该目标资源单次扣减的资源量,以上述回滚为例,该目标资源所扣减的资源量为1个数量的s2。
针对竞争抢分发资源的场景,相关技术中通过会采用关系型数据库(如Mysql)加上其本身支持的事务来保证并发下的数据正确性,但相关技术中支持的写入性能非常有限,特别针对一些热门资源的并发抢资源操作,服务器的服务性能下降非常大且数据准确性无法得到保证。而本公开实施例中通过上述依次逐级扣减和异常回滚机制能够针对多个第二终端争抢资源激烈的场景,特别是热点并发的竞争,确保服务器提供非常好的服务性能和严格的数据正确性。
图7是根据一示例性实施例示出的一种资源分发装置的框图。参照图7,该资源分发装置700包括第一资源量确定单元710,资源快照更新单元720,资源分发记录信息生成单元730,资源获取入口信息生成单元740和返回单元750。
第一资源量确定单710,被配置为执行响应于第一终端针对目标资源的资源分发请求,确定所述第一终端对应的资源账户中资源的资源量得到所述资源的第一资源量;所述资源分发请求包括所述目标资源的分发资源量和所述第一终端的第一终端标识,所述资源包括所述目标资源;
资源快照更新单元720,被配置为执行根据所述资源的可分发资源量更新所述第一终端对应的资源快照;所述资源快照表征所述第一终端在最近一次发起资源分发时所对应的所述资源的第一资源量;
资源分发记录信息生成单元730,被配置为执行根据所述目标资源的分发资源量,生成并存储资源分发记录信息;所述资源分发记录信息包括资源分发记录以及所述资源分发记录对应的分发记录标识;
资源获取入口信息生成单元740,被配置为执行根据所述第一终端标识和所述分发记录标识,生成资源获取入口信息;
返回单元750,被配置为执行将所述资源获取入口信息返回给所述第一终端。
在一个示例性的实施方式中,所述装置还包括:
请求接收单元,被配置为执行接收第二终端响应于针对所述资源获取入口信息触发的资源获取指令,发送的资源获取请求;
第一获取单元,被配置为执行根据所述第一终端标识,获取所述第一终端对应的资源快照,以及所述资源账户中所述资源的资源量得到所述资源的第二资源量;
第二获取单元,被配置为执行获取所述分发记录标识对应的所述资源分发记录;
可获取资源量确定单元,被配置为执行根据所述第二发资源量、所述资源快照和所述资源分发记录,确定所述第二终端对应的所述目标资源的可获取资源量;所述目标资源的可获取资源量为所述目标资源对应的第二资源量、所述第一资源量和所述分发资源量中的最小值;
资源转移单元,被配置为执行根据所述第二终端对应的所述目标资源的可获取资源量,将所述第一终端对应的所述目标资源转移给所述第二终端。
在一个示例性的实施方式中,所述资源转移单元包括:
获取资源量确定单元,被配置为执行根据所述第二终端对应的所述目标资源的可获取资源量,确定所述第二终端对应的所述目标资源的获取资源量;
扣减单元,被配置为执行根据所述第二终端对应的所述目标资源的获取资源量,依次对所述资源分发记录中所述目标资源的分发资源量、所述第一终端对应的资源快照中所述目标资源的第一资源量和所述目标资源的第二资源量进行扣减;
资源量更新单元,被配置为执行根据所述目标资源所扣减的资源量,更新所述第二终端对应的所述目标资源的资源量。
在一个示例性的实施方式中,所述资源转移单元还包括:
扣减资源量获取单元,被配置为执行获取针对所述目标资源的分发资源量扣减的第一扣减资源量、针对所述目标资源的第一资源量扣减的第二扣减资源量以及针对所述目标资源的第二资源量扣减的第三扣减资源量;
扣减资源量差值确定单元,被配置为执行当所述第一扣减资源量、所述第二扣减资源量和所述第三扣减资源量不一致时,确定所述第二扣减资源量与所述第三扣减资源量之间的第一扣减资源量差值,以及所述第一扣减资源量与所述第三扣减资源量之间的第二扣减资源量差值;
回滚单元,被配置为执行对扣减后的所述目标资源的第一资源量增加所述第一扣减资源量差值,以及对扣减后的所述目标资源的分发资源量增加所述第二扣减资源量差值。
在一个示例性的实施方式中,所述装置还包括:
第三获取单元,被配置为执行获取所述第一终端在预设时间段内的资源分发请求的请求次数;
执行单元,被配置为执行当所述请求次数未超过预设请求次数阈值时,执行所述确定所述第一终端对应的资源账户中资源的资源量得到所述资源的第一资源量的步骤。
在一个示例性的实施方式中,所述第一资源量确定单元包括:
第四获取单元,被配置为执行获取所述第一终端对应的资源账户中资源的资源量;
保留资源量确定单元,被配置为执行根据预置分发策略,确定所述资源的保留资源量;
差值确定单元,被配置为执行确定所述资源量与所述保留资源量的差值,将所述差值作为所述资源的第一资源量。
在一个示例性的实施方式中,所述资源包括至少一个资源类型;所述资源快照更新单元包括:
查找单元,被配置为执行以所述第一终端标识为键名,查找资源快照集中与所述键名相匹配的目标哈希表;所述资源快照集中的资源快照为哈希表的数据结构;
目标字段确定单元,被配置为执行确定所述目标哈希表中与各所述资源类型相匹配的目标字段;
值更新单元,被配置为执行将所述目标哈希表中所述目标字段的值,更新为相应资源类型的资源对应的第一资源量。
在一个示例性的实施方式中,所述资源分发记录信息以哈希表的数据结构存储,所述哈希表以所述分发记录标识和所述第一终端标识作为键名,所述目标资源的资源类型作为所述键名对应的字段,所述字段的值为相应资源类型的目标资源的分发资源量。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
在一个示例性的实施方式中,还提供了一种电子设备,包括处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为执行存储器上所存放的指令时,实现本公开实施例中提供的任意一种资源分发方法。
该电子设备可以是终端、服务器或者类似的运算装置,以该电子设备是服务器为例,图8是根据一示例性实施例示出的一种用于资源分发的电子设备的框图,如图8所示,该服务器800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以***处理器(Central Processing Units,CPU)810(处理器810可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器830,一个或一个以上存储应用程序823或数据822的存储介质820(例如一个或一个以上海量存储设备)。其中,存储器830和存储介质820可以是短暂存储或持久存储。存储在存储介质820的程序可以包括一个或一个以上模块,每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器810可以设置为与存储介质820通信,在服务器800上执行存储介质820中的一系列指令操作。服务器800还可以包括一个或一个以上电源860,一个或一个以上有线或无线网络接口850,一个或一个以上输入输出接口840,和/或,一个或一个以上操作***821,例如WindowsServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
输入输出接口840可以用于经由一个网络接收或者发送数据。上述的网络具体实例可包括服务器800的通信供应商提供的无线网络。在一个实例中,输入输出接口840包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,输入输出接口840可以为射频(RadioFrequency,RF)模块,其用于通过无线方式与互联网进行通讯。
本领域普通技术人员可以理解,图8所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,服务器800还可包括比图8中所示更多或者更少的组件,或者具有与图8所示不同的配置。
在一个示例性的实施方式中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器830,上述指令可由装置800的处理器810执行以完成上述方法。可选地,计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在一个示例性的实施方式中,还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现本公开实施例提供的任意一种资源分发方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种资源分发方法,其特征在于,包括:
响应于第一终端针对目标资源的资源分发请求,确定所述第一终端对应的资源账户中资源的资源量得到所述资源的第一资源量;所述资源分发请求包括所述目标资源的分发资源量和所述第一终端的第一终端标识,所述资源包括所述目标资源;
根据所述资源的第一资源量更新所述第一终端对应的资源快照;所述资源快照表征所述第一终端在最近一次发起资源分发时所对应的所述资源的第一资源量;
根据所述目标资源的分发资源量,生成并存储资源分发记录信息;所述资源分发记录信息包括资源分发记录以及所述资源分发记录对应的分发记录标识;
根据所述第一终端标识和所述分发记录标识,生成资源获取入口信息;
将所述资源获取入口信息返回给所述第一终端。
2.根据权利要求1所述的资源分发方法,其特征在于,所述方法还包括:
接收第二终端响应于针对所述资源获取入口信息触发的资源获取指令,发送的资源获取请求;
根据所述第一终端标识,获取所述第一终端对应的资源快照,以及所述资源账户中所述资源的资源量得到所述资源的第二资源量;
获取所述分发记录标识对应的所述资源分发记录;
根据所述第二资源量、所述资源快照和所述资源分发记录,确定所述第二终端对应的所述目标资源的可获取资源量;所述目标资源的可获取资源量为所述目标资源对应的所述第二资源量、所述第一资源量和所述分发资源量中的最小值;
根据所述第二终端对应的所述目标资源的可获取资源量,将所述第一终端对应的所述目标资源转移给所述第二终端。
3.根据权利要求2所述的资源分发方法,其特征在于,所述根据所述第二终端对应的所述目标资源的可获取资源量,将所述第一终端对应的所述目标资源转移给所述第二终端包括:
根据所述第二终端对应的所述目标资源的可获取资源量,确定所述第二终端对应的所述目标资源的获取资源量;
根据所述第二终端对应的所述目标资源的获取资源量,依次对所述资源分发记录中所述目标资源的分发资源量、所述第一终端对应的资源快照中所述目标资源的第一资源量和所述目标资源的第二资源量进行扣减;
根据所述目标资源所扣减的资源量,更新所述第二终端对应的所述目标资源的资源量。
4.根据权利要求3所述的资源分发方法,其特征在于,所述方法还包括:
获取针对所述目标资源的分发资源量扣减的第一扣减资源量、针对所述目标资源的第一资源量扣减的第二扣减资源量以及针对所述目标资源的第二资源量扣减的第三扣减资源量;
当所述第一扣减资源量、所述第二扣减资源量和所述第三扣减资源量不一致时,确定所述第二扣减资源量与所述第三扣减资源量之间的第一扣减资源量差值,以及所述第一扣减资源量与所述第三扣减资源量之间的第二扣减资源量差值;
对扣减后的所述目标资源的第一资源量增加所述第一扣减资源量差值,以及对扣减后的所述目标资源的分发资源量增加所述第二扣减资源量差值。
5.根据权利要求1所述的资源分发方法,其特征在于,在所述确定所述第一终端对应的资源账户中资源的资源量得到所述资源的第一资源量之前,所述方法还包括:
获取所述第一终端在预设时间段内的资源分发请求的请求次数;
当所述请求次数未超过预设请求次数阈值时,执行所述确定所述第一终端对应的资源账户中资源的资源量得到所述资源的第一资源量的步骤。
6.根据权利要求1所述的资源分发方法,其特征在于,所述确定所述第一终端对应的资源账户中资源的资源量得到所述资源的第一资源量包括:
获取所述第一终端对应的资源账户中资源的资源量;
根据预置分发策略,确定所述资源的保留资源量;
确定所述资源量与所述保留资源量的差值,将所述差值作为所述资源的第一资源量。
7.一种资源分发装置,其特征在于,包括:
第一资源量确定单元,被配置为执行响应于第一终端针对目标资源的资源分发请求,确定所述第一终端对应的资源账户中资源的资源量得到所述资源的第一资源量;所述资源分发请求包括所述目标资源的分发资源量和所述第一终端的第一终端标识,所述资源包括所述目标资源;
资源快照更新单元,被配置为执行根据所述资源的第一资源量更新所述第一终端对应的资源快照;所述资源快照表征所述第一终端在最近一次发起资源分发时所对应的所述资源的第一资源量;
资源分发记录信息生成单元,被配置为执行根据所述目标资源的分发资源量,生成并存储资源分发记录信息;所述资源分发记录信息包括资源分发记录以及所述资源分发记录对应的分发记录标识;
资源获取入口信息生成单元,被配置为执行根据所述第一终端标识和所述分发记录标识,生成资源获取入口信息;
返回单元,被配置为执行将所述资源获取入口信息返回给所述第一终端。
8.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至6中任一项所述的资源分发方法。
9.一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1至6中任一项所述的资源分发方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的资源分发方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110807406.0A CN113691586B (zh) | 2021-07-16 | 2021-07-16 | 一种资源分发方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110807406.0A CN113691586B (zh) | 2021-07-16 | 2021-07-16 | 一种资源分发方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113691586A true CN113691586A (zh) | 2021-11-23 |
CN113691586B CN113691586B (zh) | 2023-05-12 |
Family
ID=78577374
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110807406.0A Active CN113691586B (zh) | 2021-07-16 | 2021-07-16 | 一种资源分发方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113691586B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105530175A (zh) * | 2016-01-29 | 2016-04-27 | 腾讯科技(深圳)有限公司 | 一种消息处理方法、装置及*** |
US20190102715A1 (en) * | 2017-10-04 | 2019-04-04 | The Toronto-Dominion Bank | Methods and devices for managing resource reallocation |
CN109600408A (zh) * | 2017-09-30 | 2019-04-09 | 腾讯科技(深圳)有限公司 | 资源分享方法、装置、存储介质和计算机设备 |
CN110648127A (zh) * | 2019-08-13 | 2020-01-03 | 平安普惠企业管理有限公司 | 资源转移方法、装置、计算机设备和存储介质 |
CN111984677A (zh) * | 2020-07-30 | 2020-11-24 | 招联消费金融有限公司 | 资源数据核对方法、装置、计算机设备和存储介质 |
CN112328564A (zh) * | 2020-09-25 | 2021-02-05 | 北京淇瑀信息科技有限公司 | 特享资源分享方法、装置及电子设备 |
US20210110359A1 (en) * | 2019-10-15 | 2021-04-15 | Bank Of America Corporation | Dynamic virtual resource management system |
CN112965860A (zh) * | 2021-03-11 | 2021-06-15 | 中科驭数(北京)科技有限公司 | 一种快照行情分发方法、装置、设备及存储介质 |
-
2021
- 2021-07-16 CN CN202110807406.0A patent/CN113691586B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105530175A (zh) * | 2016-01-29 | 2016-04-27 | 腾讯科技(深圳)有限公司 | 一种消息处理方法、装置及*** |
CN109600408A (zh) * | 2017-09-30 | 2019-04-09 | 腾讯科技(深圳)有限公司 | 资源分享方法、装置、存储介质和计算机设备 |
US20190102715A1 (en) * | 2017-10-04 | 2019-04-04 | The Toronto-Dominion Bank | Methods and devices for managing resource reallocation |
CN110648127A (zh) * | 2019-08-13 | 2020-01-03 | 平安普惠企业管理有限公司 | 资源转移方法、装置、计算机设备和存储介质 |
US20210110359A1 (en) * | 2019-10-15 | 2021-04-15 | Bank Of America Corporation | Dynamic virtual resource management system |
CN111984677A (zh) * | 2020-07-30 | 2020-11-24 | 招联消费金融有限公司 | 资源数据核对方法、装置、计算机设备和存储介质 |
CN112328564A (zh) * | 2020-09-25 | 2021-02-05 | 北京淇瑀信息科技有限公司 | 特享资源分享方法、装置及电子设备 |
CN112965860A (zh) * | 2021-03-11 | 2021-06-15 | 中科驭数(北京)科技有限公司 | 一种快照行情分发方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113691586B (zh) | 2023-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3832578A1 (en) | Electronic invoice identifier allocation method, and electronic ticket generating method, device and system | |
US20210157800A1 (en) | Blockchain-based transaction processing methods, apparatuses, and electronic devices | |
CN109426949B (zh) | 一种跨链交易方法及装置 | |
EP3816910B1 (en) | Blockchain-based transaction processing method and apparatus, and electronic device | |
US20210256016A1 (en) | Blockchain system and method | |
EP3816912B1 (en) | Blockchain-based transaction processing method and apparatus, and electronic device | |
CN110557403B (zh) | 基于区块链的资源分配方法、装置、存储介质及节点设备 | |
US20200120039A1 (en) | Systems and methods for controlling access to broker resources | |
US10621651B2 (en) | Automatic recharge system and method, and server | |
CN110771127A (zh) | 用于区块链网络中一致分布式内存池的方法和*** | |
Hao et al. | FastPay: A secure fast payment method for edge-IoT platforms using blockchain | |
CN110753126A (zh) | 服务节点选择方法、设备管理方法、装置、***和介质 | |
CN110493308B (zh) | 分布式一致性***会话方法、装置及存储介质、服务器 | |
US11978025B2 (en) | Method and device for processing virtual cards | |
CN110888858A (zh) | 数据库的操作方法和装置、存储介质、电子装置 | |
US20190372825A1 (en) | Communication apparatus, communication method, and recording medium | |
CN113254169B (zh) | 区块链***的运行方法、装置、设备和存储介质 | |
CN113691586B (zh) | 一种资源分发方法、装置、电子设备及存储介质 | |
CN113238860B (zh) | 一种任务请求处理方法、装置、电子设备及存储介质 | |
CN112231415B (zh) | 区块链网络的数据同步方法、***、电子设备及可读介质 | |
CN112328598B (zh) | Id生成方法、装置、电子设备及存储介质 | |
US11418501B2 (en) | Automatic identity management with third party service providers | |
CN114328731A (zh) | 信息处理方法、装置、电子设备和存储介质 | |
CN110889040B (zh) | 用于推送信息的方法和装置 | |
US11973663B2 (en) | Artificial intelligence based real-time service discovery and binding technique |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |