[发明专利]一种基于celery调度框架的数据采集方法有效
申请号: | 201910299048.X | 申请日: | 2019-04-15 |
公开(公告)号: | CN110046041B | 公开(公告)日: | 2021-04-09 |
发明(设计)人: | 徐锐;代宏伟 | 申请(专利权)人: | 北京中安智达科技有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/54 |
代理公司: | 北京高文律师事务所 11359 | 代理人: | 徐江华 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 celery 调度 框架 数据 采集 方法 | ||
1.一种基于celery调度框架的数据采集方法,包括下列步骤:
1)启动系统,Celery框架读取所在项目下各级目录包含的celerytask.py文件,将celerytask.py文件中包含的所有任务在Celery中进行注册;
2)系统将任务添加到消息队列中,等待worker执行,任务包括前置任务和后置任务,前置任务分为周期性任务和即时性任务,周期性任务按照时间周期定时发送到消息队列中;后置任务是前置任务访问节点获取具体采集配置后产生的任务;
3)worker对消息队列里的前置任务进行处理,通过访问zookeeper节点,根据节点信息获取具体任务,再将具体任务添加到消息队列中;
4)前置任务处理成功,发送对应的后置任务,形成不需要访问zookeeper节点的后置任务,worker对消息队列里的后置任务进行处理,获取结果并输出。
2.根据权利要求1所述的基于celery调度框架的数据采集方法,其特征在于:步骤3)中,用户通过对zookeeper节点的设置操作来标识具体任务的增加与删除操作,celery框架通过周期性任务或监控节点触发的即时性任务,不断对用户操作的zookeeper节点进行访问,通过判断节点和子节点是否存在,节点内容是否不为空等方式,确定具体的采集任务并执行。
3.根据权利要求2所述的基于celery调度框架的数据采集方法,其特征在于:对于周期性任务,zookeeper节点分为四层,每层的结构都由节点名称、节点内容和子节点组成,上一层的子节点是下一层,第四层不存在子节点;
第一层:节点名称以项目名称命名;节点内容为空;子节点为采集的数据类型;
第二层:节点名称以采集的数据类型命名;节点内容为列表形式,列表中元素为JSON类型的配置,内容包含后续采集数据所需要的基本配置信息;子节点根据配置文件内容进行划分,若配置内容为空,子节点也不存在,用来减少程序不必要的节点访问;
第三层:节点名称以采集任务的属性特征命名;节点内容为空;子节点为采集指标;
第四层:节点名称为自定义名称;节点内容为采集内容的具体指标;子节点不存在。
4.根据权利要求2所述的基于celery调度框架的数据采集方法,其特征在于:对于即时性任务,该类任务添加后执行,仅执行一次,适用于安装任务或采集即时信息,由zookeeper的监控事件原理实现,在celery项目启动后,将监控任务发送到消息队列中,监控任务对zookeeper的节点进行监控,当zookeeper中被监控的节点发生变化时,会触发回调函数。
5.根据权利要求3所述的基于celery调度框架的数据采集方法,其特征在于:步骤4)中,后置任务由前置任务访问节点得到的配置和详细信息决定,其中的周期性任务为采集任务,包括常用数据库采集、snmp服务指标采集和远程ssh采集。
6.根据权利要求4所述的基于celery调度框架的数据采集方法,其特征在于:步骤4)中,后置任务中的即时性任务为安装任务或采集即时数据任务。
7.根据权利要求1所述的基于celery调度框架的数据采集方法,其特征在于:消息队列采用rabbitmq,通过rabbitmq的交换器将接收的消息路由给服务器中的队列,包括:
task_beat:接收任务为周期性任务;
task_db:接收由周期性任务处理返回的采集数据库类型的任务;
task_snmp:接收由周期性任务处理返回的采集snmp指标类型的任务;
task_ssh:接收有周期性任务处理返回的通过ssh服务类型的任务;
task_watch:接收监控节点的任务及监控节点触发后返回的事件任务。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京中安智达科技有限公司,未经北京中安智达科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910299048.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:分布式任务处理方法及系统和存储介质
- 下一篇:系统切换方法、装置及电子设备