logo好方法网

分布式微服务决策方法、装置、设备及计算机存储介质


技术摘要:
本发明涉及金融科技领域,并公开了一种分布式微服务决策方法,包括如下步骤:接收微服务请求,在所述微服务请求需要调用规则引擎时,获取所述规则引擎关联的入参信息;根据所述入参信息将所述规则引擎所需的目标入参进行分组;根据所述分组调用预定义数据获取组件执行  全部
背景技术:
近年来,互联网金融科技(Fintech)的飞速发展,越来越多的技术(大数据、分布 式、区块链Blockchain、人工智能等)应用在金融领域。 金融业务的数据量和业务量指数增长,这种情况下,对处理金融业务的金融业务 的系统性能提出了更高要求;目前通常使用分布式架构和微服务架构执行金融业务,微服 务中涉及到规则引擎,规则引擎执行时需要获取相关的参数,当前通过RPC(Remote  Procedure  Call,远程过程调用)获取参数,每一个RPC通过一个单独的线程调用,微服务相 关参数的获取需要的线程就非常多,而单个分布式节点所提供的线程数有限,且线程的销 毁与创建的消耗都会比较大,系统的吞吐率上不去;此外,微服务请求涉及到的参数较多, 大量参数的代码比较多,非常难阅读,且代码复用率低。
技术实现要素:
本发明的主要目的在于提出一种分布式微服务决策方法、装置、设备及计算机存 储介质,旨在当前微服务系统吞吐率低,代码难以复用。 为实现上述目的,本发明提供一种分布式微服务决策方法,所述分布式微服务决 策方法包括如下步骤: 接收微服务请求,在所述微服务请求需要调用规则引擎时,获取所述规则引擎关 联的入参信息; 在所述微服务请求需要调用规则引擎时,获取所述规则引擎关联的入参信息; 根据所述入参信息将所述规则引擎所需的目标入参进行分组,根据所述分组调用 预定义数据获取组件执行参数获取任务,获取所述分组对应的目标入参; 将获取到的目标入参输入至所述规则引擎中,获得所述微服务请求对应的处理结 果。 可选地,所述根据所述入参信息将所述规则引擎所需的目标入参进行分组的步 骤,包括: 获取所述入参信息的参数来源信息和/或参数获取规则; 按照所述参数来源信息和/或所述参数获取规则将所述规则引擎所需的目标入参 进行分组。 可选地,所述根据所述分组调用预定义数据获取组件执行参数获取任务,获取所 述分组对应的目标入参的步骤,包括: 针对每个分组分别调用一个预定义的数据获取组件; 获取各所述数据获取组件的执行时间,将所述数据获取组件按照各自的执行时间 4 CN 111552580 A 说 明 书 2/11 页 进行组合,形成数据获取组件类; 执行各所述数据获取组件类对应的参数获取任务,获取目标入参。 可选地,所述获取各所述数据获取组件的执行时间,将所述数据获取组件按照各 自的执行时间进行组合,形成数据获取组件类的步骤,包括: 获取各所述数据获取组件的执行时间,将最长的执行时间作为目标执行时间; 将每个数据获取组件分别与其他一个或多个数据获取组件进行组合,获得数据获 取组件子集; 统计所述数据获取组件子集中各数据获取组件的执行时间之和,获取执行时间之 和与所述目标执行时间接近的预设数量的目标数据获取组件子集; 将各所述目标数据获取组件子集取并集,判断所述并集中是否包含不重复的全部 数据获取组件; 若所述并集中包含不重复的全部数据获取组件,则将每个所述目标数据获取组件 子集作为一个数据获取组件类。 可选地,所述获取各所述数据获取组件的执行时间,将所述数据获取组件按照各 自的执行时间进行组合,形成数据获取组件类的步骤,包括: 获取各所述数据获取组件的执行时间,统计各所述数据获取组件的执行时间,获 得执行总时长,获取所述微服务请求的业务响应时长; 若所述执行总时长小于或等于所述业务响应时长,则将所有的所述数据获取组件 组合形成一个数据获取组件类; 若所述执行总时长大于所述业务响应时长,则按照所述业务响应时长将各所述数 据获取组件进行组合,形成至少两个数据获取组件类。 可选地,所述执行各所述数据获取组件类对应的参数获取任务,获取目标入参的 步骤,包括: 若仅形成一个数据获取组件类,则串行执行该数据获取组件类包含的各个数据获 取组件,获取目标入参; 若形成两个以上的数据获取组件类,则并行执行所述数据获取组件类,获取目标 入参,其中,在执行每一个数据获取组件类的过程中,均串行执行该数据获取组件类包含的 各个数据获取组件。 可选地,所述根据所述分组调用预定义数据获取组件执行参数获取任务,获取所 述分组对应的目标入参的步骤之后,所述方法包括: 若预设时间间隔没有获取到目标入参,则关闭所述数据获取组件。 可选地,所述将获取到的目标入参输入至所述规则引擎中,获得所述微服务请求 对应的处理结果的步骤之后,所述方法包括: 若所述处理结果异常,则将所述规则引擎中的目标入参进行降级或设置为空,执 行所述规则引擎获得所述微服务请求对应的处理结果。 此外,为实现上述目的,本发明还提供一种分布式微服务决策装置,所述分布式微 服务决策装置包括: 请求接收模块,用于接收微服务请求,在所述微服务请求需要调用规则引擎时,获 取所述规则引擎关联的入参信息; 5 CN 111552580 A 说 明 书 3/11 页 信息获取模块,用于在所述微服务请求需要调用规则引擎时,获取所述规则引擎 关联的入参信息; 入参获取模块,用于根据所述入参信息将所述规则引擎所需的目标入参进行分 组,根据所述分组调用预定义数据获取组件执行参数获取任务,获取所述分组对应的目标 入参; 输入获得模块,用于将获取到的目标入参输入至所述规则引擎中,获得所述微服 务请求对应的处理结果。 此外,为实现上述目的,本发明还提供一种分布式微服务决策设备,所述分布式微 服务决策设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的分 布式微服务决策对应的计算机程序,所述分布式微服务决策对应的计算机程序被所述处理 器执行时实现如上所述的分布式微服务决策方法的步骤。 此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读 存储介质上存储有分布式微服务决策对应的计算机程序,所述分布式微服务决策对应的计 算机程序被处理器执行时实现如上所述的分布式微服务决策方法的步骤。 本发明提供一种分布式微服务决策方法、装置、设备及计算机存储介质,本发明本 实施例中接收微服务请求,在所述微服务请求需要调用规则引擎时,获取所述规则引擎关 联的入参信息;在所述微服务请求需要调用规则引擎时,获取所述规则引擎关联的入参信 息;根据所述入参信息将所述规则引擎所需的目标入参进行分组,根据所述分组调用预定 义数据获取组件执行参数获取任务,获取所述分组对应的目标入参;将获取到的目标入参 输入至所述规则引擎中,获得所述微服务请求对应的处理结果。本发明实施例中根据入参 信息将规则引擎所需的目标入参进行分组,通过预先定义数据获取组件获取分组对应的目 标入参,这样不需要每个目标入参都通过一个线程获取,减少了线程的占用率,提高了分布 式系统的吞吐率,此外,由于通过数据获取组件获取一个类型的入参,不需要每一个目标入 参都设置相应的代码,提高了代码的复用率。 附图说明 图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图; 图2为本发明分布式微服务决策方法第一实施例的流程示意图; 图3为本发明分布式微服务决策方法第二实施例的流程示意图; 图4为本发明分布式微服务决策装置一实施例的功能模块示意图。 本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
分享到:
收藏