脚本代码的执行方法、装置、存储介质及设备制造方法及图纸

技术编号:33464124 阅读:20 留言:0更新日期:2022-05-19 00:43
本申请提供的一种脚本代码的执行方法、装置、存储介质及设备,首先接收终端设备发送的目标应用的风控系统的脚本代码,随后,将脚本代码转化为中间代码,中间代码包含有待调整的目标处理逻辑的至少一个对象的类型信息,然后,根据对象的类型信息,对中间代码进行优化,最后,根据优化后的中间代码对应的目标类对象,对目标应用的风控系统的处理逻辑进行调整。通过该方式,由于可以将脚本代码转化为包含有待调整的目标处理逻辑的至少一个对象的类型信息的中间代码,并根据优化后的中间代码对应的目标类对象,对目标应用的风控系统的处理逻辑进行调整,从而提升了脚本代码的执行效率,进而缩短了目标处理逻辑的调整及生效时间。间。间。

【技术实现步骤摘要】
脚本代码的执行方法、装置、存储介质及设备


[0001]本专利技术涉及计算机
,尤其涉及一种脚本代码的执行方法、装置、存储介质及设备。

技术介绍

[0002]在风控系统中,通常需要对业务参数进行多种运算和函数处理。运算和函数处理的逻辑会根据风控系统的风控策略而随时调整,且要求调整后的运算和函数处理逻辑可以立即生效。
[0003]现有技术中,通常通过对脚本代码进行解释执行的方式,对风控系统的运算和函数处理逻辑进行设置或调整。然而,在对脚本代码对应的中间代码进行优化的过程中,由于涉及到的运算和函数处理逻辑的对象只包含值信息,从而需要对运算和函数处理逻辑的对象进行大量的类型推断,进而导致脚本代码的执行效率低下,延长了运算和函数处理逻辑的调整及生效时间。

技术实现思路

[0004]本申请提供一种脚本代码的执行方法、装置、存储介质及设备,以解决现有技术中脚本代码的执行效率低下的技术问题。
[0005]第一方面,本申请提供一种脚本代码的执行方法,所述方法包括:
[0006]接收终端设备发送的目标应用的风控系统的脚本代码,所述脚本代码用于调整所述目标应用的风控系统的处理逻辑;
[0007]将所述脚本代码转化为中间代码,所述中间代码包含有待调整的目标处理逻辑的至少一个对象的类型信息;
[0008]根据所述对象的类型信息,对所述中间代码进行优化;
[0009]根据优化后的中间代码对应的目标类对象,对所述目标应用的风控系统的处理逻辑进行调整。
[0010]一种可选的实施方式中,所述对所述中间代码进行优化,包括:
[0011]若所述目标处理逻辑的至少一个对象的类型信息一致,则执行所述目标处理逻辑对应的程序。
[0012]一种可选的实施方式中,所述对所述中间代码进行优化,包括:
[0013]若所述目标处理逻辑的至少一个对象的类型信息不完全一致,则对所述至少一个对象的类型进行转换,直至所述至少一个对象的类型完全一致;
[0014]执行类型转换后的目标处理逻辑对应的程序。
[0015]一种可选的实施方式中,所述至少一个对象包括所述目标处理逻辑对应的令牌序列的运算对象和/或所述运算对象之间的运算关系。
[0016]一种可选的实施方式中,所述将所述脚本代码转化为中间代码,包括:
[0017]根据预设的解析规则,对所述脚本代码进行解析,生成所述脚本代码对应的抽象
语法树,所述抽象语法树包含至少一个节点,每个节点用于表征所述脚本代码中的一个语法结构;
[0018]遍历所述抽象语法树中的每个节点,将所述脚本代码转化为所述中间代码。
[0019]一种可选的实施方式中,所述生成所述脚本代码对应的抽象语法树,包括:
[0020]根据预设的词法解析规则,对所述脚本代码进行词法解析,确定所述目标处理逻辑对应的令牌序列,所述令牌序列包含所述至少一个对象的类型信息;
[0021]根据预设的语法解析规则,对所述令牌序列进行语法解析,确定至少一个表达式语句,所述表达式语句用于指示多个所述对象之间的处理逻辑;
[0022]根据所述至少一个表达式语句,生成所述脚本代码对应的抽象语法树。
[0023]一种可选的实施方式中,在所述对所述目标应用的风控系统的处理逻辑进行调整之前,所述方法还包括:
[0024]对所述优化后的中间代码进行编译,确定所述优化后的中间代码对应的字节码;
[0025]根据预设的类加载器,对所述字节码进行加载,确定所述字节码对应的目标类对象。
[0026]一种可选的实施方式中,在所述对所述目标应用的风控系统的处理逻辑进行调整之前,所述方法还包括:
[0027]获取所述脚本代码的标识;
[0028]根据所述脚本代码的标识与目标类对象之间的映射关系,确定所述脚本代码对应的目标类对象。
[0029]一种可选的实施方式中,在所述对所述目标应用的风控系统的处理逻辑进行调整之后,所述方法还包括:
[0030]确定调整后的处理逻辑对应的返回值的类型信息;
[0031]确定所述返回值的类型信息是否为预设类型信息;
[0032]若否,则根据所述预设类型信息,对所述返回值的类型进行转换。
[0033]第二方面,本申请提供一种脚本代码的执行装置,所述装置包括:
[0034]接收模块,用于接收终端设备发送的目标应用的风控系统的脚本代码,所述脚本代码用于调整所述目标应用的风控系统的处理逻辑;
[0035]转化模块,用于将所述脚本代码转化为中间代码,所述中间代码包含有待调整的目标处理逻辑的至少一个对象的类型信息;
[0036]优化模块,用于根据所述对象的类型信息,对所述中间代码进行优化;
[0037]调整模块,用于根据优化后的中间代码对应的目标类对象,对所述目标应用的风控系统的处理逻辑进行调整。
[0038]一种可选的实施方式中,所述优化模块,具体用于若所述目标处理逻辑的至少一个对象的类型信息一致,则执行所述目标处理逻辑对应的程序。
[0039]一种可选的实施方式中,所述优化模块,具体用于若所述目标处理逻辑的至少一个对象的类型信息不完全一致,则对所述至少一个对象的类型进行转换,直至所述至少一个对象的类型完全一致;执行类型转换后的目标处理逻辑对应的程序。
[0040]一种可选的实施方式中,所述至少一个对象包括所述目标处理逻辑对应的令牌序列的运算对象和/或所述运算对象之间的运算关系。
[0041]一种可选的实施方式中,所述转化模块,具体用于根据预设的解析规则,对所述脚本代码进行解析,生成所述脚本代码对应的抽象语法树,所述抽象语法树包含至少一个节点,每个节点用于表征所述脚本代码中的一个语法结构;遍历所述抽象语法树中的每个节点,将所述脚本代码转化为所述中间代码。
[0042]一种可选的实施方式中,所述转化模块,具体用于根据预设的词法解析规则,对所述脚本代码进行词法解析,确定所述目标处理逻辑对应的令牌序列,所述令牌序列包含所述至少一个对象的类型信息;根据预设的语法解析规则,对所述令牌序列进行语法解析,确定至少一个表达式语句,所述表达式语句用于指示多个所述对象之间的处理逻辑;根据所述至少一个表达式语句,生成所述脚本代码对应的抽象语法树。
[0043]一种可选的实施方式中,所述调整模块,还用于对所述优化后的中间代码进行编译,确定所述优化后的中间代码对应的字节码;根据预设的类加载器,对所述字节码进行加载,确定所述字节码对应的目标类对象。
[0044]一种可选的实施方式中,所述调整模块,还用于获取所述脚本代码的标识;根据所述脚本代码的标识与目标类对象之间的映射关系,确定所述脚本代码对应的目标类对象。
[0045]一种可选的实施方式中,所述调整模块,还用于确定调整后的处理逻辑对应的返回值的类型信息;确定所述返回值的类型信息是否为预设类型信息;若否,则根据所述预设类型信息,对所述返回值的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种脚本代码的执行方法,其特征在于,所述方法包括:接收终端设备发送的目标应用的风控系统的脚本代码,所述脚本代码用于调整所述目标应用的风控系统的处理逻辑;将所述脚本代码转化为中间代码,所述中间代码包含有待调整的目标处理逻辑的至少一个对象的类型信息;根据所述对象的类型信息,对所述中间代码进行优化;根据优化后的中间代码对应的目标类对象,对所述目标应用的风控系统的处理逻辑进行调整。2.根据权利要求1所述的方法,其特征在于,所述对所述中间代码进行优化,包括:若所述目标处理逻辑的至少一个对象的类型信息一致,则执行所述目标处理逻辑对应的程序。3.根据权利要求2所述的方法,其特征在于,所述对所述中间代码进行优化,包括:若所述目标处理逻辑的至少一个对象的类型信息不完全一致,则对所述至少一个对象的类型进行转换,直至所述至少一个对象的类型完全一致;执行类型转换后的目标处理逻辑对应的程序。4.根据权利要求1所述的方法,其特征在于,所述至少一个对象包括所述目标处理逻辑对应的令牌序列的运算对象和/或所述运算对象之间的运算关系。5.根据权利要求1所述的方法,其特征在于,所述将所述脚本代码转化为中间代码,包括:根据预设的解析规则,对所述脚本代码进行解析,生成所述脚本代码对应的抽象语法树,所述抽象语法树包含至少一个节点,每个节点用于表征所述脚本代码中的一个语法结构;遍历所述抽象语法树中的每个节点,将所述脚本代码转化为所述中间代码。6.根据权利要求5所述的方法,其特征在于,所述生成所述脚本代码对应的抽象语法树,包括:根据预设的词法解析规则,对所述脚本代码进行词法解析,确定所述目标处理逻辑对应的令牌序列,所述令牌序列包含所述至少一个对象的类型信息;根据预设的语法解析规则,对所述令牌序列进行语法解析,确定至少一个表达式语句,所述表达式语句用于指示多个所述对象之间的处理逻辑;根据所述至少一个表达式语句,生成所述脚本代码对应的抽象语法树。7.根据权利要求1

...

【专利技术属性】
技术研发人员:曹辉荣黎勇凌国沈
申请(专利权)人:杭州优行科技有限公司
类型:发明
国别省市:

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

1