基于脚本的金融规则引擎系统及处理方法技术方案

技术编号:33773569 阅读:19 留言:0更新日期:2022-06-12 14:26
本发明专利技术公开了一种基于脚本的金融规则引擎系统及处理方法,涉及一种互联网搜索技术领域,包括规则引擎,用于接收外部业务服务和业务程序的规则计算请求;脚本加载器,用于规则脚本ID从对象存储服务器加载对应的规则代码,并在加载后,根据不同的脚本语言进行不同的初始化和基础脚本检查;脚本执行器,用于将业务参数传递给规则脚本,实现脚本的调用执行,并将执行结果或者异常信息返回给规则引擎;并由规则引擎将执行结果返回给业务服务/程序;业务程序。本申请通过可以将多语言的脚本程序植入到业务程序中,通过复用既有程序中的业务指标提取规则实现快速获取和维护规则数据指标,提升获取规则数据的灵活性。提升获取规则数据的灵活性。提升获取规则数据的灵活性。

【技术实现步骤摘要】
基于脚本的金融规则引擎系统及处理方法


[0001]本专利技术涉及一种互联网搜索
,具体是一种基于脚本的金融规则引擎系统及处理方法。

技术介绍

[0002]在金融融资过程中风控审核阶段的审核规则复杂多变且时效要求高。目前市场上通用的规则引擎虽能实现复杂的审核规则,但业务数据指标获取及计算灵活性低,导致从开发实现、验收、上线周期较长,无法适应业务快速响应的需求。

技术实现思路

[0003]本专利技术的目的在于提供一种基于脚本的金融规则引擎系统及处理方法,以解决上述
技术介绍
中提出的问题。
[0004]为实现上述目的,本专利技术提供如下技术方案:
[0005]基于脚本的金融规则引擎系统,包括
[0006]规则引擎,用于接收外部业务服务和业务程序的规则计算请求;
[0007]脚本加载器,用于规则脚本ID从对象存储服务器加载对应的规则代码,并在加载后,根据不同的脚本语言进行不同的初始化和基础脚本检查;
[0008]脚本执行器,用于将业务参数传递给规则脚本,实现脚本的调用执行,并将执行结果或者异常信息返回给规则引擎;并由规则引擎将执行结果返回给业务服务/程序;
[0009]业务程序,用于根据规则引擎返回的数据,按照业务逻辑对规则引擎的返回数据进行处理。
[0010]作为本专利技术进一步的方案:所述规则引擎包括:
[0011]加载规则基本信息,用于在业务服务/程序通过配置的规则代码请求规则引擎;
[0012]调用脚本加载器加载规则脚本,用于根据获取到的规则脚本基本信息,通过规则脚本ID调用规则脚本加载器完成规则脚本加载;
[0013]脚本执行器规则,用于通过业务服务/程序传输的业务参数,调用对应的规则脚本,完成规则执行,并将执行结果返回给规则引擎;
[0014]规则引擎收集脚本执行结构,用于对规则执行结果的数据结构和异常返回进行检查,封装返回值对象给业务服务/程序。
[0015]作为本专利技术再进一步的方案:所述加载规则基本信息中的信息核心属性包括:规则名、规则代码、规则语言、规则脚本ID、版本号和规则适应的业务分类。
[0016]作为本专利技术再进一步的方案:所述脚本加载器包括
[0017]Java脚本加载器,用于对规则脚本进行预编译并将编译后的class字节码存入当前JVM;
[0018]Python脚本加载器,用于对Python代码进行基础的语法检测,并将检测后的脚本代码存入缓存;
[0019]Go脚本加载器,用于进行基础语法检测,并将检测后的脚本代码存入缓存。
[0020]作为本专利技术再进一步的方案:所述脚本执行器包括Java脚本执行器、Python脚本执行器和Go脚本执行器。
[0021]作为本专利技术再进一步的方案:所述预编译包括自动校验单元,用于自动对脚本语法的正确性进行校验。
[0022]基于脚本的金融规则引擎处理方法,包括以下步骤:
[0023]S1、将外部业务服务和业务程序的规则计算请求发送给规则引擎;
[0024]S2、利用脚本加载器从对象存储服务器加载对应的规则代码,并在加载后,根据不同的脚本语言进行不同的初始化和基础脚本检查;
[0025]S3、利用脚本执行器将业务参数传递给规则脚本,实现脚本的调用执行,并将执行结果或者异常信息返回给规则引擎;并由规则引擎将执行结果返回给业务服务/程序;
[0026]S4、根据规则引擎返回的数据,按照业务逻辑对规则引擎的返回数据进行处理。
[0027]作为本专利技术再进一步的方案:所述步骤S1包括
[0028]S11、利用加载规则基本信息在业务服务/程序通过配置的规则代码请求规则引擎;
[0029]S12、利用调用脚本加载器加载规则脚本根据获取到的规则脚本基本信息,通过规则脚本ID调用规则脚本加载器完成规则脚本加载;
[0030]S13、利用脚本执行器规则通过业务服务/程序传输的业务参数,调用对应的规则脚本,完成规则执行,并将执行结果返回给规则引擎;
[0031]S14、利用规则引擎收集脚本执行结构对规则执行结果的数据结构和异常返回进行检查,封装返回值对象给业务服务/程序。
[0032]作为本专利技术再进一步的方案:所述步骤S2包括:
[0033]S21、利用Java脚本加载器对规则脚本进行预编译并将编译后的class字节码存入当前JVM;
[0034]S22、利用Python脚本加载器对Python代码进行基础的语法检测,并将检测后的脚本代码存入缓存;
[0035]S23、利用Go脚本加载器对基础语法进行检测,并将检测后的脚本代码存入缓存。
[0036]与现有技术相比,本专利技术的有益效果是:本申请通过可以将多语言的脚本程序植入到业务程序中,通过复用既有程序中的业务指标提取规则实现快速获取和维护规则数据指标,提升获取规则数据的灵活性。
附图说明
[0037]图1为基于脚本的金融规则引擎系统及处理方法中步骤示意图。
[0038]图2为基于脚本的金融规则引擎系统及处理方法中流程框图。
具体实施方式
[0039]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他
实施例,都属于本专利技术保护的范围。
[0040]请参阅图1和图2,本专利技术实施例中,基于脚本的金融规则引擎系统及处理方法,包括规则引擎、脚本加载器、脚本执行器和业务程序,其中还包括数据库和OSS对象存储单元,其中在本申请中,利用规则引擎用于接收外部业务服务和业务程序的规则计算请求;利用脚本加载器用于规则脚本ID从对象存储服务器(即OSS对象存储单元)加载对应的规则代码,并在加载后,根据不同的脚本语言进行不同的初始化和基础脚本检查;利用脚本执行器,用于将业务参数传递给规则脚本,实现脚本的调用执行,并将执行结果或者异常信息返回给规则引擎;并由规则引擎将执行结果返回给业务服务/程序;利用业务程序用于根据规则引擎返回的数据,按照业务逻辑对规则引擎的返回数据进行处理。其中数据库提供业务程序所需要的数据,以及对规则引擎返回的规则语言、规则脚本ID和版本号等进行存储,以及对业务程序中的业务数据进行加载存储,所以在本实施例中,需要首先将外部业务服务和业务程序的规则计算请求发送给规则引擎,随后利用脚本加载器从对象存储服务器加载对应的规则代码,并在加载后,根据不同的脚本语言进行不同的初始化和基础脚本检查,继而利用脚本执行器将业务参数传递给规则脚本,实现脚本的调用执行,并将执行结果或者异常信息返回给规则引擎;并由规则引擎将执行结果返回给业务服务/程序,最后根据规则引擎返回的数据,按照业务逻辑对规则引擎的返回数据进行处理。
[0041]作为本申请的进一步实施例,请参阅图1和图2,其中所述规则引擎包括:本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于脚本的金融规则引擎系统,其特征在于,包括规则引擎,用于接收外部业务服务和业务程序的规则计算请求;脚本加载器,用于规则脚本ID从对象存储服务器加载对应的规则代码,并在加载后,根据不同的脚本语言进行不同的初始化和基础脚本检查;脚本执行器,用于将业务参数传递给规则脚本,实现脚本的调用执行,并将执行结果或者异常信息返回给规则引擎;并由规则引擎将执行结果返回给业务服务/程序;业务程序,用于根据规则引擎返回的数据,按照业务逻辑对规则引擎的返回数据进行处理。2.根据权利要求1所述的基于脚本的金融规则引擎系统,其特征在于,所述规则引擎包括:加载规则基本信息,用于在业务服务/程序通过配置的规则代码请求规则引擎;调用脚本加载器加载规则脚本,用于根据获取到的规则脚本基本信息,通过规则脚本ID调用规则脚本加载器完成规则脚本加载;脚本执行器规则,用于通过业务服务/程序传输的业务参数,调用对应的规则脚本,完成规则执行,并将执行结果返回给规则引擎;规则引擎收集脚本执行结构,用于对规则执行结果的数据结构和异常返回进行检查,封装返回值对象给业务服务/程序。3.根据权利要求2所述的基于脚本的金融规则引擎系统,其特征在于,所述加载规则基本信息中的信息核心属性包括:规则名、规则代码、规则语言、规则脚本ID、版本号和规则适应的业务分类。4.根据权利要求1所述的基于脚本的金融规则引擎系统,其特征在于,所述脚本加载器包括Java脚本加载器,用于对规则脚本进行预编译并将编译后的class字节码存入当前JVM;Python脚本加载器,用于对Python代码进行基础的语法检测,并将检测后的脚本代码存入缓存;Go脚本加载器,用于进行基础语法检测,并将检测后的脚本代码存入缓存。5.根据权利要求1所述的基于脚本的金融规则引擎系统,其特征在于,所述脚本执行器包括J...

【专利技术属性】
技术研发人员:李兵陈华彭志伟
申请(专利权)人:成都思致科技有限公司
类型:发明
国别省市:

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

1