Android IOS WebRTC 音视频开发总结(七八)-- 为什么WebRTC端到端监控很关键?

本文主要介绍WebRTC端到端监控(我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在【编风网

支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:blackerteam 或 webrtcorgcn)。

callstats是一家做实时通讯性能测量的公司,他们博客里面提到了实时通讯过程中性能的重要性,下面是博客内容;

性能监控是系统和服务开发的一个重要方面,它可以帮助我们检测和诊断性能问题,并有助于维护系统的高可用性。现如今工程团队都基于数据做决策,因此这些性能测量在实施和部署问题修复方面发挥重要作用。

通常来说,服务监控的度量分为两类:

·规 :系统负载,错误率,用户搅动,等等;

·持续时间:创建时间,事务响应时间,等等。

在度量方面,WebRTC并没有什么不同之处。一个规模度量的例子如同时在线或者建立失败的会议数目,一个持续时间度量的例子如建立一个连接的时间。

实时测量

在callstats.io,实时性是所有系统的重要衡量指标。当第一个参与者加入会议时,我们会立即对会议进行分类。如果一个会议创建失败,服务器能够立即发现失败及其失败原因和会议从启动到失败所消耗的时间。我们非常看中这种实时处理能力,它能够在事情发生时尽快发出警告,并立即呈现给用户。我们称之为“持续分析”。

正确的端到端监控

Callstats.io通过getStats() API或者基础度量监控WebRTC连接的重要方面,即来自实际用户的度量值(只有用户才能代表他们自己)。该方法用来测量:

·每对WebRTC设备的端到端网络性能。

·WebRTC设备的媒体性能。这包括与音频重放和视频渲染相关的大量度量。

这些度量针对每个连接、参会者和会议独立地进行汇总。 

失败

基于时间的用户行为(如用户每天何时使用服务,或者在一周之中的某天使用服务),度量值每天都会发生波动变化。然而,过去几天或几周使用率的显著下降往往预示着服务出了问题。比如,会话建立失败的增加预示着基础设施、终端或者网络的故障。下图显示在一个会议期间可能发生错误的时刻。

会议建立期间错误的分类

WebRTC服务组件故障原因:

1.终端有可能改变行为。浏览器每六周更新一次,开发版和公测版可以更早于发布版得到。因此,开发团队对新特性和更新可能导致的问题有直觉。此外,Chrome和Firefox团队提前宣布PSA,并及时回答支持咨询。

2.基础设施可能过载。即服务器承受比预期更多的流量而导致性能问题。这也可能发生在底层基础设施消失,或者首次部署新特性导致影响到部分客户。

3.网络可能由于网络流量监管或者网络行为不确定发生拥塞。这可能影响地理上某些区域,或者某个特殊的网络服务提供商业/企业网络。典型地,这些情况下用户位于受限制防火墙背后,或者有网络设备发生故障。

服务中断

服务中断可能发生在一个或多个WebRTC服务基础组件停止工作时:

·信令服务器宕机:导致会话不能建立。在这种情况下,正在进行的会议数和会议总数将会降低。

·TURN服务器宕机:导致部分会话不能建立。在这种情况下,部分或者全部会议失败数目将会增加,这种失败归类为ICE连接失败。

·会议桥宕机:部分会话不能建立。一个或多个会议桥将会发送宕机报告。

向用户指出这些服务中断同样很重要。例如,告诉用户连向信令服务器或者会议桥的连接中断,或者会话正在试图重建,或者会话失败需要等待或立即重试。许多服务已经提供一些基本诊断,比如:音频仪,网络码率,静音指示,等等。

类似地,我们的API会显示网络连接状态和其它关键度量。这些度量可以以一种合适的界面呈现给终端用户,以帮助他们了解应用的当前状态,并缓解因为诊断到服务中断带来的挫败感。

收集终端用户反馈

收集终端用户反馈同样很重要,这有助于我们找到用户体验和客观质量(或者媒体和网络度量)之间的对应关系。纵观callstats.io的客户,我们发现10%~40%的会议有一个或多个用户反馈评论。反馈数量很大程度上取决于在合适的场景下提问合适的问题。

持续测试

在整个业界,自动化测试和持续集成是通行准则,这同样适用于WebRTC。浏览器厂商已经做了大量努力以实现测试过程自动化。此外,在Github上也有一些使用Selenium测试WebRTC的资源。

总结

在我们看来,对WebRTC进行端到端监控的最好方法就是用API把监控方案集成到WebRTC应用的核心单元。用这种方法,监控方案能够实时追踪规模度量和持续时间度量,向开发者提供WebRTC服务状态的实时信息。基于API的方案也提供很多回调的可能性,例如,自动调整WebRTC应用的性能以提供给终端用户尽可能好的媒体质量。

译者:weizhenwei,具体详见:【编风网

时间: 2024-12-05 12:39:42

Android IOS WebRTC 音视频开发总结(七八)-- 为什么WebRTC端到端监控很关键?的相关文章

Android IOS WebRTC 音视频开发总结(八十五)-- 使用WebRTC广播网络摄像头视频(下)

本文主要介绍WebRTC (我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:blackerteam 或 webrtcorgcn). 回顾:Android IOS WebRTC 音视频开发总结(八十三)-- 使用WebRTC广播网络摄像头视频(上) 连接网络摄像头 正如上文所提,我们选用一款简单的D-Link DCS-7010L网络摄像头.关键原因在于它支持RTSP协议,因此服务

Android IOS WebRTC 音视频开发总结(八十一)-- WebRTC靠谱吗?有没有适合的SDK推荐?

作者:blaker,最早发表在我们的微信公众上,详见[这里] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:blackerteam 或 webrtcorgcn). 靠不靠谱这个问题一直被问到,其实很难一两句话说清楚,因为答案不是一个靠谱或不靠谱可以回答好的,既然被反复问到,今天就系统地整理参考答案. 从大的方向看WebRTC是非常靠谱的,原因如下: 1.使跨平台.跨浏览器通讯成为可能,而且大大加速了这个进程,这就是GoogleWebRTC大受欢迎的主要原因: 2.大

Android IOS WebRTC 音视频开发总结(八十二)-- VP8对VP9,质量还是码率?

本文主要介绍VP9(我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:blackerteam 或 webrtcorgcn). VP8和VP9是由Google开发和推动的视频编解码器.直到最近,这促使我和周围客户产生一系列有趣的对话:是否采用VP9?何时采用VP9?是否应该用H.264代替VP9? 这个VP8对VP9的话题往往导致误解,因此先让我把事情排序. 首要的事情放前边: 1

Android IOS WebRTC 音视频开发总结(八十七)-- WebRTC中丢包重传NACK实现分析

本文主要介绍WebRTC中丢包重传NACK的实现,作者:weizhenwei ,文章最早发表在编风网,微信ID:befoio 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:blackerteam 或 webrtcorgcn). 在WebRTC中,前向纠错(FEC)和丢包重传(NACK)是抵抗网络错误的重要手段.FEC在发送端将数据包添加冗余纠错码,纠错码连同数据包一起发送到接收端:接收端根据纠错码对数据进行检查和纠正.RFC5109[1]定义FEC数据包的格式.NA

Android IOS WebRTC 音视频开发总结(八十六)-- WebRTC中RTP/RTCP协议实现分析

本文主要介绍WebRTC中的RTP/RTCP协议,作者:weizhenwei ,文章最早发表在编风网,微信ID:befoio 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:blackerteam 或 webrtcorgcn). 一 前言 RTP/RTCP协议是流媒体通信的基石.RTP协议定义流媒体数据在互联网上传输的数据包格式,而RTCP协议则负责可靠传输.流量控制和拥塞控制等服务质量保证.在WebRTC项目中,RTP/RTCP模块作为传输模块的一部分,负责对发送端

Android IOS WebRTC 音视频开发总结(八)

这篇文章主要介绍ios webrtcdemo的实现及相关注意事项(本系列文章转载请说明出处:http://www.cnblogs.com/lingyunhu). 前面很多人问webrtc android下有webrtcdemo, ios上怎么找不到,放在哪里呢? 答案:webrtcdemo在ios上没有实现,如果要实现也很简单,既然安卓都有了,依葫芦画瓢即可移植到ios上,不过可能要求您熟悉android语法,这里给出ios上的参考代码: 1 -(BOOL)initWebrtcObjects 2

Android IOS WebRTC 音视频开发总结(四四)-- webrtc图书

本文主要介绍即将出版的webrtc图书相关信息,支持原创,转载必须说明出处,更多详见www.rtc.help ------------------------------------------------ 之前很多人请我推荐比较好的介绍webrtc的书籍,很抱歉,国内还没有这方面的图书. 另外也有出版商跟我联系,希望我们能写本这方面的书,很抱歉,由于各方面的原因未能达成. 不过现在有个好消息就是接下来终于有一本介绍webrtc的书籍要在国内发行了,下面介绍些该书相关信息: 1,这是一本外文书籍

Android IOS WebRTC 音视频开发总结(八十三)-- 使用WebRTC广播网络摄像头视频(上)

本文主要介绍WebRTC (我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:blackerteam 或 webrtcorgcn). 从技术上来讲,使用网络摄像头进行在线广播并不需要WebRTC.摄像头本身就是一台服务器,它能够连接到路由器并在线传输视频内容.那么,为什么我们还需要WebRTC呢? 这至少有两方面原因: 1.随着观看网络广播的观众越来越多,网络带宽会逐渐不足.如果

转:?Android IOS WebRTC 音视频开发总结 (系列文章集合)

随笔分类 - webrtc Android IOS WebRTC 音视频开发总结(七八)-- 为什么WebRTC端到端监控很关键? 摘要: 本文主要介绍WebRTC端到端监控(我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:blackerteam 或 webrtcorgcn). callstats是一家做实时通讯性能测阅读全文 posted @ 2016-07-22 08:24

Android IOS WebRTC 音视频开发总结(六八)-- Google: What's next for WebRTC

本文主要从用户,公司和技术角度分析美女视频直播这个行业,文章最早发表在我们的微信公众号上,支持原创,详见这里, 欢迎关注微信公众号blackerteam,更多详见www.rtc.help Justion和Sarah是google webrtc项目的主要负责人,下面的图片是根据他们分享的内容进行整理的,涉及webrtc进展.优化等方方面面.整理这些资料的过程中我们发现他们对待webrtc还是挺用心的,为webrtc的完善做了很多的工作,谢谢他们! 原始视频时长53分13秒,全英文的,所以我们考虑做