1.一种计算引擎任务执行方法,其特征在于,应用于一计算引擎,所述计算引擎至少包括服务层和计算层,所述计算引擎任务执行方法包括以下步骤:所述服务层获取待计算表达式,并获取第一编程语言类型;所述第一编程语言类型为所述待计算表达式对应的编程语言类型;
所述服务层基于所述第一编程语言类型从所述计算层的至少两种脚本执行器中查找并选择一脚本执行器,得到目标脚本执行器;
所述服务层传递所述待计算表达式至所述目标脚本执行器;
所述计算层基于所述目标脚本执行器计算所述待计算表达式,得到计算结果,并将所述计算结果返回至所述服务层;
所述计算引擎还包括脚本执行器构造层,所述服务层基于所述第一编程语言类型从所述计算层的至少两种脚本执行器中查找并选择一脚本执行器,得到目标脚本执行器之前,包括:所述脚本执行器构造层获取计算业务需求;
所述脚本执行器构造层基于所述计算业务需求构造所述计算层中的脚本执行器组;所述脚本执行器组包括至少两种脚本执行器;
所述脚本执行器构造层基于所述计算业务需求构造所述计算层中的脚本执行器组,包括:所述脚本执行器构造层生成所述脚本执行器组对应的构建工厂;
所述脚本执行器构造层基于所述构建工厂构造所述脚本执行器组;
所述脚本执行器构造层基于所述构建工厂构造所述脚本执行器组之后,包括:所述脚本执行器构造层获取所述脚本执行器组中脚本执行器的身份信息;
所述脚本执行器构造层发送所述身份信息至业务层,以完成身份信息的注册;
所述服务层基于所述第一编程语言类型从所述计算层的至少两种脚本执行器中查找并选择一脚本执行器,得到目标脚本执行器,包括:所述服务层查找脚本服务器组中各脚本服务器的名字;
所述服务层基于所述名字查找并选择第二编程语言类型中与所述第一编程语言类型相同的第三编程语言类型;所述第二编程语言类型中的各编程语言类型与各所述脚本服务器的名字一一对应;
所述服务层基于预设映射关系确定所述第三编程语言类型对应的名字对应的类全路径,包括:所述脚本执行器的名字和脚本执行器对应的类全路径之间建立有映射关系;
所述服务层选择所述类全路径对应的脚本执行器,得到目标脚本执行器;
所述服务层基于所述名字查找并选择第二编程语言类型中与所述第一编程语言类型相同的第三编程语言类型,包括:所述服务层基于预设名字查找优先级确定名字查找顺序;
所述服务层基于所述名字查找顺序查找所述第二编程语言类型中与所述第一编程语言类型相同的第三编程语言类型;
所述服务层基于所述名字查找顺序查找所述第二编程语言类型中与所述第一编程语言类型相同的第三编程语言类型包括:名字查找顺序为python脚本执行器、groovy脚本执行器和lua脚本执行器;在需要查找各脚本服务器的名字时,查找python脚本执行器;在python脚本执行器与语言类型不匹配时,查找groovy脚本执行器;在groovy脚本执行器与语言类型匹配时,停止查找各脚本服务器的名字过程,服务层选择groovy脚本执行器为目标脚本执行器;在groovy脚本执行器仍与语言类型不匹配时,则查找lua脚本执行器,直至完成各脚本服务器的名字的查找并选择。
2.如权利要求1所述的方法,其特征在于,所述服务层基于预设名字查找优先级确定名字查找顺序,包括:所述服务层获取各所述脚本执行器的历史选择次数;
所述服务层基于所述历史选择次数为各所述脚本执行器的名字的查找顺序进行排序,得到所述名字查找顺序。
3.如权利要求1所述的方法,其特征在于,所述服务层基于预设名字查找优先级确定名字查找顺序,还包括:所述服务层获取各所述脚本执行器的查找更新时间;
所述服务层基于所述查找更新时间为各所述脚本执行器的名字的查找顺序进行排序,得到所述名字查找顺序。
4.一种计算引擎任务执行设备,其特征在于,所述计算引擎任务执行设备包括存储器、处理器和存储在所述存储器上并可在所述处理器上运行的计算引擎任务执行程序,所述计算引擎任务执行程序被所述处理器执行时实现如权利要求1至3中任一项所述的计算引擎任务执行方法的步骤。
5.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算引擎任务执行程序,所述计算引擎任务执行程序被处理器执行时实现如权利要求1至3中任一项所述的计算引擎任务执行方法的步骤。