写点什么

又拍云 CDN 全网实时、精准化监控技术实践

  • 2016-01-10
  • 本文字数:1244 字

    阅读完需:约 4 分钟

又拍云如何在国内业界率先做到 CDN 全网实时、精准化监控?就这个问题,又拍云 CTO 黄慧攀于 8 月 25 日在“云头条”做了专题分享。内容涉及监控在云服务中的重要性,以及实现监控性能提升的技术实战方法。

首先,从整体上讲,又拍云的云服务有三块:

  • CDN
  • 云存储
  • 云处理

每个云服务的监控侧重点各有不同。

CDN:监控性能和可用性

又拍云的 CDN 用到了听云(基调)和安全宝、DnsPod 等外围的服务监控。zabbix 是最基础的服务器监控,它的不足之处在于:

  1. 实时性差;
  2. 无法方便的对业务进行监控(需要做大量对接工作)。

Agent 是 又拍云自己写的 shell 脚本,负责从服务器自身内部发现问题,并告警。如:本机的各个业务系统是否在正确运行,和当前服务器连接关键机房的网络质量等。缺点在于如果自身网络出现问题就无法告警,但能根据自己的业务特点,做多种健康检查,比较灵活。

数据中心:自主研发狗眼监控系统

注:标黑色线的,表示该项监控的主要用途

数据中心有两块大业务:

  • 云存储
  • 云处理

去年又拍云用 zabbix 来负责服务器硬件资源的监控,但无法满足需求,所以我们又拍云自己开发了一个系统,命名为“狗眼系统”,来专门做服务监控。它可以监控到又拍云某项具体服务:

  • 吞吐量
  • 平均处理耗时

更重要的是,它能做到秒级告警,又拍云数据中心每个子业务都做了狗眼的接入,以保障整个平台的稳定性。

举个例子,某个客户上传一个图片,并要求做缩略图存储。这会牵扯到几个业务系统:

  • API;
  • 云处理;
  • 云存储。

如果上传失败,或者上传很慢,以前又拍云通过 zabbix 观察哪台服务器压力大,非常麻烦,在集群服务的情况下单台服务器根本不反映集群的服务状态。

而在开发出狗眼监控后,又拍云能准确的判断到哪个子业务的负载有问题,影响到了整个业务流程,比如:云处理环节出问题了,影响到整个文件上传速度。 狗眼会根据历史情况,判定当前这秒的数值是否偏差,异常,并做出告警。又拍云的工作人员马上检查云处理这个服务集群的状况,了解是否因为当前的处理量过大或者网络读写等情况导致。

狗眼系统从 2013 年 12 月开始开发,耗时 1 周。用了将近半年时间连接 又拍云服务。“狗眼”有 20w 个 UDP 包的处理能力,有了狗眼系统,又拍云从原来的盲人摸象,进化为具有敏锐的“嗅觉”。能快速准确的定位为问题。

日常监控:实时日志分析系统

另外,又拍云还有实时日志分析系统。有些具体的错误信息需要在日志里面体现出来。日志分析系统无法做全量,一般 200 OK 正常的请求日志没必要记录和处理的,又拍云只处理 code & 400 的记录。

有这么多个渠道给出告警信息,还得避免狼来了的情况发生,对告警进行去重、筛选非常重要,黄慧攀将监控分了主要的 2 种角色,互相配合一起来做告警,方便维护。

这些监控最有用的是历史数据,在上面可以分析出异常,如又拍云针对全国机房的链路情况,每 10 分钟采一次样,采集到的数据加以处理总结出一些规律,如有些机房在晚高峰的时候会总出口拥堵而导致性能下降。更细致的观察需要根据节点的服务日志记录分析,如平均下载速度,下载速度大于 10mbps 的比例,回源慢的影响比例等。

2016-01-10 01:031443

评论

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

等不到明年金三银四了!五面滴滴之路,爆砍37K+16薪Offer

Java架构追梦

Java 学习 架构 面试 滴滴

GitHub上3天1W赞的程序员学习路线!入门进阶都非常实用

Java架构之路

Java 程序员 架构 面试 编程语言

量化交易系统开发搭建案例

薇電13242772558

区块链 策略模式

英特尔宋继强:迈向可持续的千倍速计算未来

E科讯

距离 Java 开发者玩转 Serverless,到底还有多远?

阿里巴巴云原生

Java Serverless 微服务 云原生 中间件

云服务的可服务性经典6问

华为云开发者联盟

服务 计算

volatile,synchronized可见性,有序性,原子性代码证明(基础硬核)

叫练

volatile 多线程 synchronized 原子性 指令

App性能测试揭秘(Android篇)

移动研发平台EMAS

阿里云 软件测试 测试 性能测试 云性能测试

倍频程与钢琴调式的距离

阿里云CloudImagine

音频技术 音频

Reactive Spring实战 -- 理解Reactor的设计与实现

binecy

reactor Reactive SpringBoot 2

大作业1

龙卷风

架构师一期

阿里开发10年,全部心血汇聚成到这份文档里,拿到30W的offer没问题

Java架构之路

Java 程序员 架构 面试 编程语言

大众汽车“芯片荒”,折射汽车芯片的漫漫“自主替代”路

脑极体

TypeScript | 第二章:类、接口和之间的关系

梁龙先森

typescript 大前端 七日更

MSHA x Chaos 容灾高可用实践

阿里巴巴云原生

数据库 高可用 云原生 中间件 容灾

阿里架构师478页Java工程师面试知识解析笔记pdf,一份2021年通往阿里的面试指南

Java架构之路

Java 程序员 架构 面试 编程语言

由于不知线程池的bug,某Java程序员叕被祭天

Java架构师迁哥

架构师训练营W10作业

Geek_f06ede

比特币10年:从2个披萨涨到2万美金,背后的三个“神秘人”

CECBC

比特币

大连市税务局局长赵福增:用区块链打破部门间“信息孤岛”

CECBC

区块链 汽车

学透这份300页的2020最新java面试题及答案,一线大厂offer随便拿

Java架构之路

Java 程序员 架构 面试 编程语言

LeetCode题解:55. 跳跃游戏,贪心,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

2020,谁是中国ToB行业最有影响力的企业?

ToB行业头条

软件测试(功能、接口、性能、自动化)详解

测试人生路

软件测试

测开之函数进阶· 第2篇《纯函数》

清菡软件测试

测试开发

PostgreSQL:您可能需要增加MAX_LOCKS_PER_TRANSACTION

PostgreSQLChina

数据库 postgresql 开源

【Java入门】流

Albert

Java 七日更

OPPO小布助手正在改变普罗米修斯的世界

脑极体

一文带你了解传统手工特征的骨龄评估方法的发展历史

华为云开发者联盟

方法 骨龄 评估

“区块链+社会治理”模式获居民点赞

CECBC

区块链 区块链投票

神比喻:低代码开发像自动驾驶汽车,零代码开发像无人驾驶汽车!

J2PaaS低代码平台

程序员 软件 开发者 低代码 开发工具

又拍云 CDN 全网实时、精准化监控技术实践_音视频(后端)_UPYUN_InfoQ精选文章