批量发券方法及装置制造方法及图纸

技术编号:26479926 阅读:17 留言:0更新日期:2020-11-25 19:24
本发明专利技术公开了一种批量发券方法及装置,该方法包括:通过线程池的方式为原始数据库中的多个线程配置待发优惠券数据;根据存储在缓存数据库中的不同类型的优惠券剩余信息,对多个线程中的待发优惠券数据进行发券处理;当优惠券剩余信息被多个线程同时访问时,以排队的方式获取对优惠券剩余信息的操作权限。本发明专利技术可以在保证高效率发券的同时,避免发券超出业务预算,从而对客户进行超额发券。

【技术实现步骤摘要】
批量发券方法及装置
本专利技术涉及通信
,尤其涉及一种批量发券方法及装置。
技术介绍
在银行的权益系统里,需要给特定的客户(如待发薪客户)赠送定向优惠券,而每类优惠券会有一定预算限制设定领取上限。在批量发券时受到这些限制因素的控制,若用单线程的方式实现,则发券速度慢,效率较低;若用多线程方式实现虽然能解决发券效率低的问题,同时也会遇到另一类问题,多线程同时批量发多张同种类型的优惠券时,会导致此优惠券的领取上限无法控制住,最终超出业务预算,对客户超额发券。
技术实现思路
本专利技术实施例提供一种批量发券方法,用以在保证高效率发券的同时,避免发券超出业务预算,从而对客户进行超额发券,该方法包括:通过线程池的方式为原始数据库中的多个线程配置待发优惠券数据;根据存储在缓存数据库中的不同类型的优惠券剩余信息,对多个线程中的待发优惠券数据进行发券处理;当所述优惠券剩余信息被多个线程同时访问时,以排队的方式获取对所述优惠券剩余信息的操作权限。可选的,所述方法还包括:当第一预设线程中有多条数据对同一类型的待发优惠券数据进行发券处理时,待所述第一预设线程中的同一类型的待发优惠券数据全部处理完后,释放对所述优惠券剩余信息的操作权限。可选的,释放对所述优惠券剩余信息的操作权限之后,所述方法还包括:将所述第一预设线程弹出队列,并使所述队列中排在所述第一预设线下一位的线程获取对所述优惠券剩余信息的操作权限。可选的,所述方法还包括:每隔预设时长,将缓存数据库中的不同类型的优惠券剩余信息与原始数据库中的待发优惠券数据进行同步处理。本专利技术实施例还提供一种批量发券装置,用以在保证高效率发券的同时,避免发券超出业务预算,从而对客户进行超额发券,该装置包括:数据配置模块,用于通过线程池的方式为原始数据库中的多个线程配置待发优惠券数据;发券处理模块,用于根据存储在缓存数据库中的不同类型的优惠券剩余信息,对多个线程中的待发优惠券数据进行发券处理;操作权限获取模块,用于当所述优惠券剩余信息被多个线程同时访问时,以排队的方式获取对所述优惠券剩余信息的操作权限。可选的,所述装置还包括:操作权限释放模块,用于当第一预设线程中有多条数据对同一类型的待发优惠券数据进行发券处理时,待所述第一预设线程中的同一类型的待发优惠券数据全部处理完后,释放对所述优惠券剩余信息的操作权限。可选的,所述装置还包括:操作权限处理模块,用于将所述第一预设线程弹出队列,并使所述队列中排在所述第一预设线下一位的线程获取对所述优惠券剩余信息的操作权限。可选的,所述装置还包括:数据同步模块,用于每隔预设时长,将缓存数据库中的不同类型的优惠券剩余信息与原始数据库中的待发优惠券数据进行同步处理。本专利技术实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法。本专利技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述方法的计算机程序。本专利技术实施例中,通过线程池的方式为原始数据库中的多个线程配置待发优惠券数据,并根据存储在缓存数据库中的不同类型的优惠券剩余信息,对多个线程中的待发优惠券数据进行发券处理,当所述优惠券剩余信息被多个线程同时访问时,以排队的方式获取对所述优惠券剩余信息的操作权限,在保证高效率发券的同时,避免发券超出业务预算,从而对客户进行超额发券。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:图1为本专利技术实施例中批量发券方法的流程图;图2为本专利技术实施例中批量发券装置的结构示意图;图3为本专利技术实施例中排队获取对优惠券剩余信息的操作权限的具体示例图;图4为本专利技术实施例中多条数据对同一类优惠券进行访问的流程示例图;图5为本专利技术实施例中多个线程间获取和释放操作优惠券剩余信息操作权限的具体示例图;图6是本专利技术实施例计算机设备示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本专利技术实施例做进一步详细说明。在此,本专利技术的示意性实施例及其说明用于解释本专利技术,但并不作为对本专利技术的限定。在银行的权益系统里,需要给特定的客户(如待发薪客户)赠送定向优惠券,而每类优惠券会有一定预算限制设定领取上限。在批量发券时受到这些限制因素的控制,若用单线程的方式实现,则发券速度慢,效率较低;若用多线程方式实现虽然能解决发券效率低的问题,同时也会遇到另一类问题,多线程同时批量发多张同种类型的优惠券时,会导致此优惠券的领取上限无法控制住,最终超出业务预算,对客户超额发券。为了解决上述问题,本专利技术实施例提供了一种批量发券方法。图1为本专利技术实施例提供的一种批量发券方法的流程图,如图1所示,该方法包括:步骤101、通过线程池的方式为原始数据库中的多个线程配置待发优惠券数据。具体实施时,当业务计划推广某种类型的优惠券,需在原始数据库中建立待发优惠券数据,设置优惠券的各种限制,其中包含了优惠券的名额上限。当建立待发优惠券数据成功后,将优惠券剩余名额字段同步至缓存数据库中,后续领券时只从缓存数据库提取优惠券剩余名额数据进行扣减即可。在实施例中,多线程利用线程池管理,可以通过配置文件配置线程数量、存活期等参数。步骤102、根据存储在缓存数据库中的不同类型的优惠券剩余信息,对多个线程中的待发优惠券数据进行发券处理。具体实施时,在待发优惠券数据建立成功后,业务可以通过上传大批量白名单客户领券文件的方式给特定客户定向发券。白名单客户领券文件上传至原始数据库后,系统通过多线程处理此文件,每个线程获取领券文件的数据分块,逐条处理分块里的待发优惠券数据。步骤103、当所述优惠券剩余信息被多个线程同时访问时,以排队的方式获取对所述优惠券剩余信息的操作权限。具体实施时,如图3所示,当多个线程中的每个线程处理待发优惠券数据时,需获取优惠券的剩余名额的热点数据,即优惠券剩余信息。而热点数据是可能被多个线程并行访问的,因此需要操作优惠券剩余名额时,则需以先进先出的方式排队获取剩余名额的操作锁权限,即操作权限,当最顶端的线程获取到操作此热点数据的权限时,扣减剩余名额,更新缓存中的剩余名额,如果剩余名额已经为0则不可继续更新拒绝该客户的领券业务。由图1可知,本专利技术实施例提供的一种批量发券方法,通过线程池的方式为原始数据库中的多个线程配置待发优惠券数据,并根据存储在缓存数据库中的不同类型的优惠券剩余信息,对多个线程中的待发优惠券数据进行发券处理,当所述优惠券剩余信本文档来自技高网...

【技术保护点】
1.一种批量发券方法,其特征在于,包括:/n通过线程池的方式为原始数据库中的多个线程配置待发优惠券数据;/n根据存储在缓存数据库中的不同类型的优惠券剩余信息,对多个线程中的待发优惠券数据进行发券处理;/n当所述优惠券剩余信息被多个线程同时访问时,以排队的方式获取对所述优惠券剩余信息的操作权限。/n

【技术特征摘要】
1.一种批量发券方法,其特征在于,包括:
通过线程池的方式为原始数据库中的多个线程配置待发优惠券数据;
根据存储在缓存数据库中的不同类型的优惠券剩余信息,对多个线程中的待发优惠券数据进行发券处理;
当所述优惠券剩余信息被多个线程同时访问时,以排队的方式获取对所述优惠券剩余信息的操作权限。


2.如权利要求1所述的方法,其特征在于,还包括:
当第一预设线程中有多条数据对同一类型的待发优惠券数据进行发券处理时,待所述第一预设线程中的同一类型的待发优惠券数据全部处理完后,释放对所述优惠券剩余信息的操作权限。


3.如权利要求2所述的方法,其特征在于,释放对所述优惠券剩余信息的操作权限之后,所述方法还包括:
将所述第一预设线程弹出队列,并使所述队列中排在所述第一预设线下一位的线程获取对所述优惠券剩余信息的操作权限。


4.如权利要求1所述的方法,其特征在于,还包括:
每隔预设时长,将缓存数据库中的不同类型的优惠券剩余信息与原始数据库中的待发优惠券数据进行同步处理。


5.一种批量发券装置,其特征在于,包括:
数据配置模块,用于通过线程池的方式为原始数据库中的多个线程配置待发优惠券数据;
发券处理模块,用于根据存储在缓存数据库中的不同类型的优...

【专利技术属性】
技术研发人员:詹丽孙中军周师专
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:北京;11

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

1