写点什么

优酷大剧全链路技术保障探索和实践

  • 2020-02-19
  • 本文字数:2081 字

    阅读完需:约 7 分钟

优酷大剧全链路技术保障探索和实践

优酷大剧全链路技术保障探索和实践

一、什么是大剧保障?

优酷大剧保障主要是对大剧、大综等节目视频上线前和上线后进行质量保障。大剧视频上线所涉及方很多:比如播放(类似报错、卡住、黑屏、声音等问题)、付费权益、运营配置、用户舆情反馈是否正常等。


总的来说,优酷大剧保障主要是在大剧大综开播前、开播后对视频进行质量保障,及时发现问题并解决,避免资损和客诉,使用户有更好的观影体验。

二、 如何保障?

大剧保障基本涵盖了大剧生命周期的全链路各个阶段保障,其中核心环节包括以下方面:



针对图中的各阶段,我们建设了大剧上线流程中需要保障的环节以及能力:


  1. 视频生产

  2. 视频生产环节保障包括片源质量、上传转码质量等维度,主要以视频质量检测为主。

  3. 1) 介质到位时间,在上线前 24 小时检查介质是否到位。

  4. 2) 介质质量,采用机检和人工检查两种方式进行,保证片源正常。

  5. 3) 上传转码耗时评估,重点关注开播前转码完成情况。

  6. 4) 转码完成的流会自动进入视频质量检测,检测其声音、画质、数据等。

  7. 5) 直播流生产场景,主要检测源流规格、流稳定性等源流质量,录制过程中关注负载、排队、耗时、画质等。

  8. 运营管理

  9. 1) 视频、节目播控策略检测及实时监控。

  10. 2) 媒资数据检查,如广告点位、编目、其他重要字段,实时变化通知。

  11. 权益管理

  12. 付费会员是视频网站的重要上帝用户,保证会员权益重中之重:

  13. 1) 会员可看视频的会员权益正确。

  14. 2) 付费点播的交易、权益正确。

  15. 3) 视频相关付费属性的校验和实时监控。

  16. 播放环节

  17. 播放环节是最主要的环节。以前有个痛点:视频在开播前是屏蔽状态,无法提前通过前端播放,只能等开播后到线上观看,如果有问题则为时已晚。为了解决这个问题,我们建设了播放预览能力:

  18. 1) 播放提供预览环境,可以播放未上线的视频,同时与线上真实场景保持一致的会员权益、广告、播放策略等,保证上线前可以模拟上线后的真实数据。

  19. 2) 同时优酷提供 APP、PC 等客户端预览环境,得以在各端验证播放效果。

  20. 另外,我们也将播放自动化测试能力赋能在播放环节,比如接口自动化测试、播放器自动化测试。

  21. 线上监控

  22. 1) 上线之后,除了有全量的播放监控,也有针对大剧建立了相应指标监控和报警,如播放成功率、卡顿率等。

  23. 2) 对弹幕评论、客诉反馈、社会舆情中的信息,建立了实时监控,发现问题及时响应排查。

三、大剧保障平台

围绕以上各环节,我们建立了大剧保障平台,提供自动或人工的检测机制,并有相关变更和事件的通知触达能力。


下图是我们覆盖到的业务以及相关的功能。



  1. 大剧管理

  2. 我们会将重要级别的剧集自动或手动方式录入到大剧保障平台,平台将自动拉取节目下的正片视频、介质,上线时间等信息,大剧保障将围绕上线时间展开一系列的保障。


  3. 服务管控

  4. 大剧上线期间,相关信息第一时间同步给各环节服务方,核心应用避免在大剧上线期间发布,如有服务发布或变更出现问题,第一时间回滚,避免问题扩大化。为了避免大剧上线期间因服务发布产生的问题,我们制定了服务管控规则:

  5. 1) 大剧上线期间禁止相关业务发布变更,会在开播前机器人通知所有人。

  6. 2) 热度比较高的剧,实施封网管控。

  7. 问题触达

  8. 建立大剧保障钉钉群,将所有相关业务方技术、产品、运营等同学集中到一起,并配置机器人用于发送报警通知。系统支持订阅大剧重要字段的变更通知,实时监听正片的各个字段变化,有异常则报警通知。同时将各个业务方已有的保障和报警能力接入进来。

  9. 检测预警消息接入后,各环节消息非常多,重要消息有可能会被忽略,那如何优化消息触达,不错过重要异常信息呢?通过持续建立和优化机器判断的能力,重要异常情况发送报警并精准触达到指定人。同时我们会存储以上所有操作变更记录和时间点,用于快速排查问题。

  10. 机器和人工保障

  11. 1) 系统自动执行各个环节的机器检测,并提供人工 check 机制,双重保障。


  12. 2) 上线前实时的检测以及结果直观的展示。


  13. 3) 上线前 24 小时播报检测情况,比如在上线前的 12 小时、4 小时、1 小时播报当前检测状态。这样不仅让各方知晓即将上线剧集,也了解各个业务的检查状况。

  14. 线上监控

  15. 1) 上线后的实时弹幕评论预警,客诉预警。其中我们在弹幕评论这块做到了自动化过滤关键字来实时报警,这也是比较准确和及时的舆情来源。

  16. 2) 上线后的播放质量监控。监控各端播放卡顿、成功率、错误数等情况,及时关注各端播放情况。

  17. 应急预案

  18. 大剧建设了发现问题的能力,也要有应对快速止血的机制。我们确定了出现问题时的预案项以及相关人员,保证问题第一时间准确的传达和快速止血,保证及时止损和问题快速修复,减少对用户的影响。

四、总结

通过以上大剧保障能力的建设,我们在一个平台上可以直观的看到每部大剧在上线前各个环节的健康状态,异常变动有预警通知,有线上的稳定性监控以及舆情监控,线上问题有相对应的快速止血策略,整个保障链路形成闭环。目前平台相关能力仍在持续建设中,横向我们将覆盖更多的相关联业务方,纵向将持续细化和加强每个业务方的保障能力。我们的目标是向着自动化、智能化发展,无人值守,做到上线前“心里有底”,上线后“心里不慌”。


作者介绍


党高锋,阿里文娱高级测试开发工程师。


相关阅读


优酷播放测试体系构建及平台化整合方案


优酷如何构建覆盖全网的播放白盒测试体系


2020-02-19 14:232330

评论

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

分布式认知工业互联网如何赋能工业企业数字化转型?

CECBC

区块链+金融:当前区块链应用场景中最具活力的领域

CECBC

Kubernetes手记(5)- 配置清单使用

雪雷

k8s 6月日更

当人工智能遇上视频直播——基于Agora Web SDK实现目标识别

dajyaretakuya

深度学习 音视频 WebRTC 声网 TensorFlow.js

学妹问,学网站开发还是打 ACM?

程序员鱼皮

Java 程序员 算法 大前端 ACM

数字化转型背景下的测试转型

BY林子

敏捷测试 测试转型

操作系统内核是什么?Linux内核又是什么?读完这篇文章,我终于知道了

奔着腾讯去

c++ 操作系统 内存管理 Linux内核 进程管理

Mybatis 二级缓存简单示例

Java mybatis

【21-1】21 连更第一篇

耳东@Erdong

6月日更

【Vue2.x 源码学习】第八篇 - 数组的深层劫持

Brave

源码 vue2 6月日更

Java--JVM运行流程

是老郭啊

Java JVM JVM原理

5分钟速读之Rust权威指南(十九)

wzx

rust 生命周期

spring-beans 注册 Beans(四)BeanDefinition

梦倚栏杆

MySQL基础之六:连接查询

打工人!

myslq 6月日更

阿里云边缘容器服务、申通 IoT 云边端架构入选 2021 云边协同发展阶段性领先成果

阿里巴巴云原生

云原生

你愿意被管理么?

escray

学习 极客时间 朱赟的技术管理课 6月日更

【布道API】浅谈API设计风格

devpoint

Rest API 6月日更

Packer 自动化镜像 Windows 安装过程

HoneyMoose

做通才还是专才,你会怎么选?

架构精进之路

认知提升 6月日更

异构内存及其在机器学习系统的应用与优化

白玉兰开源

人工智能 机器学习 解决方案 第四范式 傲腾

公司:离职就是一场危机管理

石云升

创业 职场经验 6月日更

浅谈Java中的TCP超时

Hoswey_洪树伟

Java、

Python——输入输出:加减乘除四则运算的程序

在即

6月日更

这些书都学完,绝对是编程界的大佬

看山

Java 程序员 6月日更

SpringBootApplication注解

梦倚栏杆

加快技术应用规模化 建设世界先进水平区块链产业生态

CECBC

高性能 JavaScriptの七 -- 编程实践小技巧

空城机

JavaScript 大前端 6月日更

递归全排列问题(两种方法 Java实现)

若尘

数据结构 递归 6月日更

云原生推动全云开发与实践

阿里巴巴云原生

云原生

缓存穿透、缓存雪崩、缓存击穿问题与优化方案

Skysper

Python——字符串转换与处理

在即

6月日更

优酷大剧全链路技术保障探索和实践_软件工程_阿里巴巴文娱技术_InfoQ精选文章