[发明专利]一种基于celery调度框架的数据采集方法有效
申请号: | 201910299048.X | 申请日: | 2019-04-15 |
公开(公告)号: | CN110046041B | 公开(公告)日: | 2021-04-09 |
发明(设计)人: | 徐锐;代宏伟 | 申请(专利权)人: | 北京中安智达科技有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/54 |
代理公司: | 北京高文律师事务所 11359 | 代理人: | 徐江华 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 celery 调度 框架 数据 采集 方法 | ||
本发明提供一种基于celery调度框架的数据采集方法,步骤:1)启动系统,Celery框架读取项目所在路径下各级目录中包含的celerytask.py文件,将文件中定义的任务进行注册;2)系统将任务添加到消息队列中,等待worker执行,任务包括前置任务和后置任务,前置任务分为周期性任务和即时性任务;后置任务是前置任务访问节点获取具体采集配置后产生的任务;3)worker对消息队列里的前置任务进行处理,通过访问zookeeper节点,根据节点信息获取具体任务,再将具体任务添加到消息队列中;4)前置任务处理成功,发送对应的后续任务,形成不需要访问zookeeper节点的后置任务,worker对消息队列里的后置任务进行处理,获取结果并输出。
技术领域
本发明涉及大数据处理领域,为数据库指标采集、部分设备硬件特征采集或系统信息采集提供一种较为独立的基于celery调度框架的数据采集方法。
背景技术
随着互联网技术的发展,大数据处理和云计算技术的广泛应用,对于产品和系统的部署,集群和分布式架构的方式被众多企业采用,而产品的运营维护要求需要企业对集群设备及分布式存储的性能指标进行监控和管理,以便及时发现错误进行维护,保证产品正常运营,避免损失。
基于众多应用场景下用户采集的数据具有的不确定性和复杂性,希望采用一种任务调度的方式,统一管理调度用户需要进行的采集任务,灵活的对用户采集数据的任务进行处理。
Celery是一个基于python开发的分布式异步消息任务队列,通过它可以轻松的实现任务的异步处理,对大量消息进行处理,它是一个专注于实时处理的消息队列,同时也支持任务调度。
发明内容
本发明提供了一种基于celery调度框架的数据采集方法,解决了通过任务调度的方式,统一管理调度用户需要进行的采集任务,灵活的对用户采集数据的任务进行处理的问题。
其技术方案如下所述:
一种基于celery调度框架的数据采集方法,包括下列步骤:
1)启动系统,Celery框架读取所在项目下各级目录包含的celerytask.py文件,将celerytask.py文件中包含的所有任务在Celery中进行注册;
2)系统将任务添加到消息队列中,等待worker执行,任务包括前置任务和后置任务,前置任务分为周期性任务和即时性任务,周期性任务按照时间周期定时发送到消息队列中;后置任务是前置任务访问节点获取具体采集配置后产生的任务;
3)worker对消息队列里的前置任务进行处理,通过访问zookeeper节点,根据节点信息获取具体任务,再将具体任务添加到消息队列中;
4)前置任务处理成功,发送对应的后置任务,形成不需要访问zookeeper节点的后置任务,worker对消息队列里的后置任务进行处理,获取结果并输出。
进一步的,步骤3)中,用户通过对zookeeper节点的设置操作来标识具体任务的增加与删除操作,celery框架通过周期性任务或监控节点触发的即时性任务,不断对用户操作的zookeeper节点进行访问,通过判断节点和子节点是否存在,节点内容是否不为空等方式,确定具体的采集任务并执行。
对于周期性任务,zookeeper节点分为四层,每层的结构都由节点名称、节点内容和子节点组成,上一层的子节点是下一层,第四层不存在子节点;
第一层:节点名称以项目名称命名;节点内容为空;子节点为采集的数据类型;
第二层:节点名称以采集的数据类型命名;节点内容为列表形式,列表中元素为JSON类型的配置,内容包含后续采集数据所需要的基本配置信息;子节点根据配置文件内容进行划分,若配置内容为空,子节点也不存在,用来减少程序不必要的节点访问;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京中安智达科技有限公司,未经北京中安智达科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910299048.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:分布式任务处理方法及系统和存储介质
- 下一篇:系统切换方法、装置及电子设备