【技术实现步骤摘要】
一种Celery在线管理及自动执行任务的方法、系统和存储介质
本专利技术实施例涉及计算机软件应用
,具体来说涉及一种Celery在线管理及自动执行任务的方法、系统和存储介质。
技术介绍
Celery是一种Python开发的分布式队列的管理工具,可通过接口快速实现并管理一个分布式的任务队列。Celery作为一种分布式异步框架,具有高可用、简单、快速及灵活等特点,多被用以处理实时异步任务或周期性轮询任务,例如服务器数据采集、异步执行远程命令等多种场景。现有技术中,Celery任务注册方式主要通过在后台脚本文件中提前定义任务函数名及代码逻辑,在启动Celery服务后将带有指定注解的方法名注册到Celery中,便于后续Worker进程获取任务并执行。但其存在下述不足之处:一方面使用Celery后端静态注册任务信息的方式,在任务逻辑或参数更新时,必须要求开发或运维人员变更代码并进行代码升级发布,且必须要重启Celery服务才能生效最新代码。这种方式无法有效支持需要频繁修改代码逻辑或任务参数的应用场景,且增 ...
【技术保护点】
1.一种Celery在线管理及自动执行任务的方法,其特征在于,包括以下步骤:/n在Web中自定义任务并保存在数据库中,在线触发任务执行请求;/n接收任务执行请求,为请求任务创建任务队列并为任务队列启动Worker进程,然后基于Celery异步执行方法与Python动态执行方法进行自定义任务执行。/n
【技术特征摘要】
1.一种Celery在线管理及自动执行任务的方法,其特征在于,包括以下步骤:
在Web中自定义任务并保存在数据库中,在线触发任务执行请求;
接收任务执行请求,为请求任务创建任务队列并为任务队列启动Worker进程,然后基于Celery异步执行方法与Python动态执行方法进行自定义任务执行。
2.根据权利要求1所述的一种Celery在线管理及自动执行任务的方法,其特征在于,所述基于Celery异步执行方法与Python动态执行方法进行自定义任务执行,包括下述步骤:
引用公共执行函数,通过Celery异步执行函数将任务相关信息作为执行参数发送至指定任务队列;
Worker进程从指定任务队列中获取任务信息,利用Python动态定义函数将函数字符串转换为可调用函数;
从任务信息中获取执行函数参数传入可调用函数,自动执行任务逻辑。
3.根据权利要求1所述的一种Celery在线管理及自动执行任务的方法,其特征在于,所述在Web中自定义任务并保存在数据库中,在线触发任务执行请求,包括下述步骤:
登录Web服务新建执行函数,并将函数数据保存至后端执行函数数据表中;
新建执行任务,选择执行函数输入函数参数信息,并将数据保存至后端任务表中;
在Web界面中选择执行任务,触发任务执行请求。
4.根据权利要求1所述的一种Celery在线管理及自动执行任务的方法,其特征在于,所述在Web中自定义任务之前,还包括下述步骤:
准备Python环境,并在Python环境中进行Celery及其组件的安装;
配置Celery调度引擎,启动Web服务与Celery服务进程。
5.一种Celery在线管理及...
【专利技术属性】
技术研发人员:徐基法,邓淮谦,
申请(专利权)人:苏州浪潮智能科技有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。