将定时任务应用自动转换成无服务器函数的方法和系统与流程

文档序号:36229773发布日期:2023-11-30 19:39阅读:50来源:国知局
将定时任务应用自动转换成无服务器函数的方法和系统与流程

本公开涉及代码转换领域,具体涉及用于将定时任务应用自动转换成无服务器函数的方法、系统、计算机可读介质及计算机程序产品。


背景技术:

1、定时任务应用是按照某种定时执行的应用程序。例如,设定起始和间隔执行时间,使得任务按时运行;或者以给定的速率或延迟来执行任务。比如,用户可以设定每天凌晨备份一次数据,或者每周一、每天、每小时、每分钟等触发某个任务方法的执行等等。

2、无服务器(serverless)是一种使得开发者不用过多考虑服务器从而能够专注于产品代码的应用架构或产品,典型的产品包括云函数。依托于云平台提供的serverless产品,开发者可以专注于构建应用逻辑和运行程序,而无需管理或操作服务器或基础设施,即可构建部署无服务器应用。serverless使得应用与服务器解耦,可以不用购买服务器,并且降低服务器运维的需求;serverless应用是按需执行和按实际使用量计费的,仅在有请求需要处理或事件触发时才被加载执行,从而节省计算资源和成本;serverless函数可以单事件处理,因此可以实现业务的高并发,并且能够弹性伸缩面对峰值压力。


技术实现思路

1、根据本公开的第一方面,提供用于将定时任务应用自动转换成无服务器函数的方法,包括:加载用户的代码包;扫描代码包中的代码文件,以确定所扫描的代码文件中是否包括一个或多个定时任务方法;响应于确定所述代码文件中包括所述一个或多个定时任务方法,对于每个定时任务方法:获得每个定时任务方法的定时任务表达式、类名、方法名和参数列表,并获得唯一标识每个定时任务方法的定时任务标识符;基于所获得的类名和方法名,自动生成云原生函数的部署代码;并且基于所获得的定时任务表达式和定时任务标识符,自动生成云原生函数的定时任务配置的部署代码;创建符合函数计算平台规范的处理类作为入口函数;在符合函数计算平台规范的所述入口函数中,基于接收的第一定时任务所包含的第一定时任务标识符,确定与第一定时任务标识符对应的第一定时任务方法;以及通过反射调用执行第一定时任务方法。

2、根据本公开另一方面,提供一种用于将定时任务应用自动转换成无服务器函数的系统,包括:一个或多个处理器,和与所述一个或多个处理器耦接的存储器,所述存储器存储计算机可读程序指令,所述计算机可读程序指令在由所述一个或多个处理器执行时得所述一个或多个处理器执行如上所述的方法。

3、根据本公开又一方面,提供一种用于将定时任务应用自动转换成无服务器函数的非瞬时性计算机可读存储介质,所述非瞬时性计算机可读介质具有存储在其上的计算机可读程序指令,所述计算机可读程序指令在由一个或多个处理器执行时使得所述一个或多个处理器执行如上所述的方法。

4、根据本公开还有一方面,提供一种用于将定时任务应用自动转换成无服务器函数的计算机程序产品,包括计算机可读程序指令,所述计算机可读程序指令在由一个或多个处理器执行时,使得所述一个或多个处理器执行如本文所述的任何方法。

5、从参考附图的以下描述中,本公开其他特征和优点将变得清楚。



技术特征:

1.一种用于将定时任务应用自动转换成无服务器函数的方法,包括:

2.根据权利要求1所述的方法,其中,确定所扫描的代码文件中是否包括所述一个或多个定时任务方法包括:

3.根据权利要求2所述的方法,其中,定时任务框架针对定时任务方法的规范包括:具有该定时任务框架针对定时任务表达式而规定的注解,所述方法进一步包括:

4.根据权利要求1所述的方法,其中,获得唯一标识每个定时任务方法的定时任务标识符包括:根据类名、方法名和参数列表生成所述定时任务标识符。

5.根据权利要求1所述的方法,还包括,对于每个定时任务方法,将获得的定时任务表达式、定时任务标识符、类名、方法名和参数列表存储为数据结构。

6.根据权利要求1所述的方法,其中,在参数列表不为空的情况下,所述参数列表包括每个参数的参数名称和参数类型。

7.根据权利要求1所述的方法,其中,所述云原生函数的定时任务配置的部署代码用于基于所述定时任务配置来执行对应的所述云原生函数,其中基于定时任务标识符确定所述对应的云原生函数,基于定时任务表达式确定执行所述云原生函数的定时。

8.根据权利要求1所述的方法,其中,确定与第一定时任务标识符对应的第一定时任务方法包括:

9.根据权利要求8所述的方法,其中,通过反射调用执行第一定时任务方法包括:

10.一种用于将定时任务应用自动转换成无服务器函数的系统,包括:

11.一种非瞬时性计算机可读介质,所述非瞬时性计算机可读介质具有存储在其上的计算机可读程序指令,所述计算机可读程序指令当由一个或多个处理器执行时使得所述一个或多个处理器执行包括权利要求1-9中任一项所述的方法。

12.一种计算机程序产品,包括计算机可读程序指令,所述计算机可读程序指令在由一个或多个处理器执行时,使得所述一个或多个处理器执行根据权利要求1-9中任一项所述的方法。


技术总结
公开了将定时任务应用自动转换成无服务器函数的方法、系统和介质。方法包括:扫描用户的代码包中的代码文件,以确定所述代码文件中包括的一个或多个定时任务方法,对于每个定时任务方法:获得定时任务表达式、类名、方法名和参数列表以及定时任务标识符;基于所获得的类名和方法名,自动生成云原生函数的部署代码;并且基于所获得的定时任务表达式和定时任务标识符,自动生成云原生函数的定时任务配置的部署代码;创建符合函数计算平台规范的处理类作为入口函数;在所述入口函数中,基于接收的第一定时任务,确定对应的第一定时任务方法;以及通过反射调用执行第一定时任务方法。

技术研发人员:杨帆,王情,徐一鸣
受保护的技术使用者:领悦数字信息技术有限公司
技术研发日:
技术公布日:2024/1/16
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1