AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

MeilleursAgents 是如何监控分布式任务队列的

  • 2018-03-04
  • 本文字数:1106 字

    阅读完需:约 4 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

MeilleursAgents 网站能够列出资产卖家的资产及其评估的价格,该网站分享了他们基于Celery 的分布式任务队列是如何监控的。由Python、StatsD、Bucky、Graphite 和Grafana 联合组成的管道能够监控任务的生命周期和执行率。

该文主要关注他们是如何监控Celery 运行的。 Celery 是一个由 Python 编写的分布式任务队列,它使用 broker- 客户端模式来分配任务给工作者(worker)。监控分布式任务队列是非常困难的,因为工作者节点是分布式的,很难跟踪特定请求的状态,如果跨多个系统的话,则会更加困难。但是,这种情况下的监控是关于整体成功 / 失败以及执行率的。每个阶段任务的累积数量,即已接收的(received)、已处理的(processed),也能反映出任务队列是否有速度减缓的情况。InfoQ 联系到了 MeilleursAgents 的工程主管 Pierre Boeuf 来学习这一话题。

指标收集管道包含 Python 客户端,它会监听 Celery 事件并使用 StatsD API 将数据推送至 StatsD 。然后,数据会被发送至 Bucky,Bucky 会将数据写入到 Graphite 中。 Bucky 会运行一个服务器,将传入的指标数据进行处理并转换成 Graphite 能够理解的格式。Bucky 所接收的指标可以是 StatsD 或 Collectd 这种指标工具所收集到的原始数据,如果 Graphite 无法理解传入的指标格式的话,那么 Bucky 就派上用场了。在 MeilleursAgents,Graphite 安装时使用了 Whisper 作为后端数据库。Boeuf 说团队在使用 Graphite 中还没有遇到扩展性方面的问题:

我们遇到的唯一扩展性相关的问题是因为将 StatsD 和 Graphite 放到了同一台服务器上。随着请求的增加,它出现了过载,所以我们现在在每台机器上都有本地 Bucky,它会推送指标数据。

Grafana 用来作为查询指标的前端。监控项包括任务、broker 以及工作者。按照 Boeuf 的说法,Web 和数据团队会使用仪表盘。

图片来源: https://medium.com/meilleursagents-engineering/how-we-monitor-asynchronous-tasks-da25728173d6?__s=6cjguhzuufdark8he4bm

他们组合使用 diffseries (在 Graphite 中,抽取时间序列的方式)和 Grafana着色(coloring)相关的配置可视化高亮显示可能存在的问题,比如红色背景代表某个应该为零的指标出现了非零的状况。 NewRelic Google Cloud Monitoring ,前者是一个外部工具,后者是产品所部署的云环境的一部分,这两个工具会负责告警部分。另外,NewRelic 还会监控 Celery 进程本身,确保它们处于运行状态。Grafana 也有内置的告警支持以及像 Pagerduty OpsGenie 这样的集成服务,但是团队并没有采用它们。

查看英文原文 Monitoring Distributed Task Queues at MeilleursAgents

2018-03-04 18:001568

评论

发布
暂无评论
发现更多内容

构建智能电商新生态:深度解析京东商品详情API的力量

代码忍者

API 测试 pinduoduo API

中国智能汽车腾飞,为什么异构算力是第一生产力?

脑极体

异构计算

低代码平台搭建CRM系统实现公海客户自动分配

低代码小观

低代码开发 低代码平台 低代码搭建crm系统

一文让你明白手游行业需要堡垒机的必要性

行云管家

网络安全 数据安全 堡垒机 手游

以 Buycbuy为蓝本:淘宝微店代购集运系统搭建秘籍

tbapi

淘宝代购系统 淘宝代购集运系统 华人代购系统 逆向海淘系统 代购商城系统

【YashanDB知识库】YAS-02025 no free space in virtual memory pool

YashanDB

yashandb 崖山数据库 yashandb知识库

多项政策扶持与流量激励,华为音乐空间音频创作者获全链路支持

最新动态

实时分析都靠它→揭秘YashanDB列式存储引擎的技术实现

YashanDB

列式存储 yashandb 崖山数据库

TiDB 扩容过程中 PD 生成调度的原理及常见问题丨TiDB 扩缩容指南(一)

PingCAP

TDengine 签约寓信科技,推动智慧公寓的数字化转型

TDengine

数据库 tdengine

地平线轨迹预测 QCNet 参考算法-V1.0

地平线开发者

自动驾驶 算法

Gyges Labs引领行业变革,全球首款隐形显示AI眼镜亮相光博会

江湖老铁

京东广告投放平台整洁架构演进之路

京东零售技术

架构 代码

【YashanDB知识库】DBeaver无法访问数据库

YashanDB

yashandb 崖山数据库

VMware Avi Load Balancer 30.2.2 发布下载,新增功能概览

sysin

负载均衡 vmware 应用交付 AVI

AI话中秋,移动高清超高清技术描绘家庭娱乐“新画卷”

最新动态

全面方位了解桌面管理

Geek_a83400

PingCAP 荣登 2024 Cloud 100 China 第七名

PingCAP

每日必抢小程序下单总结

阿里技术

小程序 支付宝 购物 夸克

升华产品管理以提高业务敏捷性

ShineScrum

咸宁等保测评机构在哪里?电话多少?

行云管家

等保 等级保护 等保测评 咸宁

淘宝商品详情API返回值中的预售与定制信息

技术冰糖葫芦

api 网关 API Gateway API 文档 API 测试 pinduoduo API

Datadog 监控最佳实践 | 收集正确的数据

巴辉特

监控 可观测性 监控系统 运维监控 开源监控

【YashanDB知识库】archivelog磁盘满导致数据库abnormal

YashanDB

yashandb 崖山数据库 yashandb知识库

移动云参编全球首个大模型供应链安全国际标准

科技热闻

MeilleursAgents是如何监控分布式任务队列的_DevOps & 平台工程_Hrishikesh Barua_InfoQ精选文章