一种额度数据处理方法及服务器的制造方法
【技术领域】
[0001] 本发明设及数据访问技术领域,更具体地说,设及一种额度数据处理方法及服务 器。
【背景技术】
[0002] 在银行面向客户提供的提资理财产品中,如国债(储蓄国债、记账国债、凭证国 债)和理财产品(开放式、半开放式等)等,均会在发售之前确定一个销售规模,即针对该 产品设定本次允许的可售额度,该可售额度可能直接由监管部口分配(如国债),也可能由 业务主管部口在产品创建之初确定;随着产品的发售,已售额度将不停的更新,为避免已售 额度超过可售额度,对已售额度进行管控使其不超过可售额度显得尤为重要。
[0003] 现有的管控方式为,在数据库中存储可售额度值,产品交易时,交易端发送交易数 据至服务器端,服务器端访问所存储的可售额度值,对可售额度值进行销售扣划,实现可售 额度值随产品销售的更新,保证已售额度不超出设定可售额度;其中设及的额度数据处理 方式为;将可售额度值保存在数据库表的记录中,交易端与服务器端进行联机交易后,服务 器端获取交易数据(含有当前的交易额),并访问数据库表中记录的可售额度值,将该可售 额度值扣减当前交易额,若扣减后的值为正值,则当前交易被允许,若为负值,则当前交易 不被允许。
[0004] 然而,现有的额度数据处理方式在交易量较大时,存在因服务器集中访问数据库 引起的数据库资源冲突问题,会造成大量交易排队等待资源的情况,使得交易数据的处理 效率极为低下,且在极端情况下可能会因交易资源耗尽而引起系统岩机。。
【发明内容】
[0005] 有鉴于此,本发明实施例提供一种。
[0006] 为实现上述目的,本发明实施例提供如下技术方案:
[0007] 一种额度数据处理方法,应用于服务器,所述方法包括:
[000引预先为产品创建对应的命名计数器Named Counter,使用所述Named Counter记录 产品的已售额度值;
[0009] 在获取到认购交易数据时,将所述Named Counter的当前值加上所述认购交易数 据中携带的认购交易额,与设定的所述产品的可售额度值进行比较;
[0010] 在所述当前值加上所述认购交易额,不大于所述可售额度值时,更新所述Named Counter的已售额度值为所述当前值加上所述认购交易额。
[0011] 其中,所述方法还包括:
[0012] 将认购交易撤销对应的返还额度加入所述可售额度值,形成新可售额度值,所述 可售额度值为在日终批量时所确定的总可售额度减去当日真实的已售额度值所确定的额 度值;
[0013] 在所述当前值加上所述认购交易额,大于所述可售额度值时,比较所述当前值加 上所述认购交易额,与所述新可售额度值的大小;
[0014] 在所述当前值加上所述认购交易额不大于所述新可售额度值时,更新所述Named Counter的已售额度值为所述当前值加上所述认购交易额。
[0015] 其中,所述方法还包括:
[0016] 在所述当前值加上所述认购交易额大于所述新可售额度值时,确定本次交易超 额。
[0017] 其中,所述方法还包括:
[001引获取认购交易撤销数据,确定所述认购交易撤销对应的返还额度,将所述返还额 度累加在设定数据库中。
[0019] 其中,所述方法还包括:
[0020] 在产品当日销售结束时,累计该产品下所有客户的认购额度,确定当日真实的已 售额度;将总可售额度减去当日真实的已售额度,确定真实的可售额度。
[0021] 其中,所述方法还包括:
[0022] 在服务器异常时,累计产品名下所有客户的账户余额,并根据余额将Named Counter恢复到岩机前的状态。
[0023] 本发明实施例还提供一种服务器,包括:
[0024] 创建模块,用于预先为产品创建对应的命名计数器Named Counter,使用所述 Named Counter记录产品的已售额度值;
[0025] 第一比较模块,用于在获取到认购交易数据时,将所述Named Counter的当前值加 上所述认购交易数据中携带的认购交易额,与设定的所述产品的可售额度值进行比较;
[0026] 第一更新模块,用于在所述当前值加上所述认购交易额,不大于所述可售额度值 时,更新所述Named Counter的已售额度值为所述当前值加上所述认购交易额。
[0027] 其中,所述服务器还包括:
[002引返还模块,用于将认购交易撤销对应的返还额度加入所述可售额度值,形成新可 售额度值,所述可售额度值为在日终批量时所确定的总可售额度减去当日已售额度真实值 所确定的额度值;
[0029] 第二比较模块,用于在所述当前值加上所述认购交易额,大于所述可售额度值时, 比较所述当前值加上所述认购交易额,与所述新可售额度值的大小;
[0030] 第二更新模块,用于在所述当前值加上所述认购交易额不大于所述新可售额度值 时,更新所述Named Counter的已售额度值为所述当前值加上所述认购交易额;
[0031] 超额确定模块,用于在所述当前值加上所述认购交易额大于所述新可售额度值 时,确定本次交易超额。
[003引其中,所述服务器还包括:
[0033] 返还额度记录模块,用于获取认购交易撤销数据,确定所述认购交易撤销对应的 返还额度,将所述返还额度累加在设定数据库中。
[0034] 其中,所述服务器还包括:
[0035] 还原模块,用于在产品当日销售结束时,累计该产品下所有客户的认购额度,确定 当日真实的已售额度;将总可售额度减去当日真实的已售额度,确定真实的可售额度。
[0036] 基于上述技术方案,本发明实施例提供的额度数据处理方法的流程图,需预先为 产品创建对应的命名计数器Named Counter,从而使用所述Named Counter记录产品的已 售额度值;当获取到认购交易数据时,可将所述Named Counter的当前值加上所述认购交 易数据中携带的认购交易额,与设定的所述产品的可售额度值进行比较,并在所述当前值 加上所述认购交易额,不大于所述可售额度值时,更新所述Named Counter的已售额度值为 所述当前值加上所述认购交易额;从而实现对产品交易额的更新,及交易额不超过销售额 度值的管控。本发明实施例提供的额度数据处理方法,将销售额度的访问控制通过Named Counter实现,从而解决了因服务器集中访问数据库引起的数据库资源冲突问题,避免了大 量交易排队等待资源的情况,提升了交易数据的处理效率。
【附图说明】
[0037] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可W根据 提供的附图获得其他的附图。
[003引图1为本发明实施例提供的额度数据处理方法的流程图;
[0039] 图2为本发明实施例提供的额度数据处理方法的另一流程图;
[0040] 图3为本发明实施例提供的DEFI肥命令的格式示意图;
[0041] 图4为本发明实施例提供的DELETE命令的格式示意图;
[0042] 图5为本发明实施例提供的GET命令的格式示意图;
[0043] 图6为本发明实施例提供的服务器的结构框图;
[0044] 图7为本发明实施例提供的服务器的另一结构框图;
[0045] 图8为本发明实施例提供的服务器的再一结构框图;
[0046] 图9为本发明实施例提供的服务器的又一结构框图;
[0047] 图10为本发明实施例提供的服务器的又另一结构框图。
【具体实施方式】
[0048] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
[0049] 图1为本发明实施例提供的额度数据处理方法的流程图,该方法可应用于服务 器,该服务器可W是一台服务器或者多台服务器的集合,本发明实施例可选用IBM大型主 机作为服务器;参照图1,该方法可W包括:
[0化日]步骤S100、预先为产品创建对应的Named Counter,使用所述Named Counter记录 产品的已售额度值;
[0化1] Named Counter (命名计数器)为一个可在Sysplex (系统综合体)环境才可W使 用的计数器,本发明实施例可在产品上市时,采用定义Counter命令值EFI肥DC0UNTER)为 处于销售期的产品创建对应的Named Counter,该Named Counter可用于记录产品的已售额 度值;
[0化2] DEFI肥DCOUNT邸命令为本发明实施例在采用Named Counter进行额度记录的场 景下,所定义的一个控制Named Counter的命令,该命令可W为大型主机系统中的系统命 令;本发明实施例可通过DEFI肥DCOUNT邸命令创建一个新的Named Counter,并可设置该 Named Counter启动时的最小值、最大值和当前值;
[0化3] 可选的,本发明实施例可设置该Named Counter的初始值为零,Named Counter的 值可根据产品的认购交易额进行更新,如产品进行了一次认购交易后,可将Named Counter 的当前值加上本次交易的认购交易额,使得Named Counter的值可根据产品的认购交易额 进行更新。
[0化4] 可选的,已售额度值的初始值可W为零。
[0化5] 步骤S110、在获取到认购交易数据时,将所述Named Counter的当前值加上所述 认购交易数据中携带的认购交易额,与设定的所述产品的可售额度值进行比较;
[0化6] 其中,Named Counter的当前值可能为零(如产品上市之初),也可能不为零(如 产品已发生认购交易,Named Counter的当前值根据产品的认购交易额进行更新);可选 的,产品的可售额度值可W为产品发售之前所确定的销售额度值,可W是一定时间内(如 当天)的可售额度总值;
[0057] 产品在交易时,交易端可生成产品的认购交易数据,并将产品的认购交易数据发