点播CDN回源标准化策略

一、背景&问题:

  • 背景:

  • 历史上公司点播CDN接入的厂商就比较多

  • 厂商之间回源的方式存在细节上的差异

  • 不同的厂商之间专线大小存在差异

  • 厂商之间的定位不同,有全镜像存储厂商,作为源站资源副本永久存储,也有镜像存储厂商

  • 问题:

  • 在有新的流量做调度切换或者专线异常恢复的时候,专线和UPOS源站的压力较大

  • 厂商回源策略有黑盒,在出现问题的时候定位难度较大,处理效率比较低

二、点播回源架构的策略变化和演变:

1、点播回源故障具体案例和反思

多厂商专线在某次故障期间和专线恢复时存在专线带宽突发的情况

图片

图片

图片

事后我们分析,专线上涨是由于厂商专线下面不同类型回源影响到的,而在故障当下,我们因为缺失细粒度的专线监控,而且我们也不能做CDN切量的操作,因为会担心流量有雪崩的风险,所以定位和止损的效率不高

 2、回源架构分析

为了解决以上的问题,提升CDN厂商回源稳定性、保障源站安全,在出现问题时能快速定位并且及时止损,减少因为回源问题导致CDN质量受损的情况。在调研前期发现对接的各家商业CDN的回源策略发现主要存在以下两种常见的回源情况:

  • 一种是用户分片请求后,要等待整文件回源完成之后再返回分片,这样容易引起用户的播放延迟增大

  • 一种是分片回源时,对分片所属的整文件进行同步拉取,这会极大的放大回源带宽,给源站造成压力

图片

3、回源优化方案

在分析了厂商回源架构后,基于公司的点播业务特性提出了一个回源标准化方案,主要的逻辑如下:

  • 首先让同步分片回源优先响应,降低用户播放延迟

  • 其次根据分片回源请求的频次统计,对视频文件的冷热进行判断

  • 判定为热文件时,整文件同步拉取,以此来降低这部分热资源分片再次请求时的回源带宽

  • 判定为冷文件的情况下,放入整文件回源对列,等待流量低峰时错峰下载落存储,避免流量高峰时段影响源站

  • 然后对整文件下载的逻辑进行流控限速,避免大幅放大回源带宽

  • 最后在极端情况专线中断时,停止异步整文件回源和主动分发拉取,保障用户同步分片回源正常走公网,降低业务影响

图片

4、  监控依赖优化

实时厂商点播回源策略和分类回源带宽监控数据设计

图片

图片

这样带来的收益有:

  • 首先在回源带宽出现异常时快速定位异常回源类型

  • 其次是厂商回源策略不再黑盒,可以依据回源策略调整控制厂商的回源带宽,避免对源站产生压力

  • 最后是能快速确认因回源导致的CDN质量问题

5、  商业CDN存储分桶方案

在执行点播回源标准化方案过程中因点播CDN和存储解耦的架构演进,从CDN资源运营的角度看,会有两个收益

  • 首先是可以依赖专线和网关能力上限最大程度实现CDN故障时的厂商间切换

  • 其次在商务成本有优化的前提下,能提高切量的效率,缩短收益获取的时间

同时在回源侧也会带来更复杂的环境

因此我们在回源侧做了改进

  • 首先是对全镜像厂商适配分桶方案,将不同的回源类型进行拆分,分别做不同优先级和策略保障,并且兼容到了CDN回源标准化的实施中

  • 其次是CDN和存储解耦后进行资源需求测算,测算单位CDN接入带宽所对应的专线容量、临时存储大小、两侧网关需求

  • 最后配合采购、网络推动CDN厂商以及存储业务方做对应的资源扩容

优化后的架构方案如下:

图片

6、  回源安全优化

为了保障源站安全,回源标准化方案引入了OSIG鉴权

图片

因为CDN和源站公网鉴权都采用UPSIG鉴权方案,源站公网地址如果泄漏,用户可以通过更换源站域名方式访问,对源站安全带来不可控的风险

因此引出了OSIG的鉴权方案,厂商CDN回源时额外新增OSIG签名,隔离CDN和源站的鉴权逻辑,从而达到保护源站安全的目的

三、总结和展望:

回源标准化的过程持续了大半年,虽然遇到了各种各样的问题,方案也在逐步演进,好在方案得以初步实现,向着符合预期的方向前进,总体上完成了大部分的功能,接下来我们将会继续站在资源运营的角度上优化各类资源,让点播的CDN业务更加稳定可靠。

-End-

作者丨振涛

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/43416.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python提取视频文案

Python提取视频文案 1、背景描述2、视频转音频3、音频转文字 1、背景描述 在多媒体应用中,视频是一个信息量巨大的载体。然而,有时我们需要从视频中提取语音并转换为文本,以用于文本分析和机器学习训练 其中主要涉及到两个过程:视…

LeetCode67(二进制求和[位运算,大数运算])

二进制求和 题目要求: 给你两个二进制字符串 a 和 b ,以二进制字符串的形式返回它们的和。 这道题其实有几种解法.我们先来介绍简单的方法. 我们可以将两个字符串的二进制转成十进制,获取对应值相加之后,我们可以不断对2取余,获取尾数拼接即可.也就是像我们平常求一…

微信公众平台、公众号、小程序联动

欢迎来到我的博客,代码的世界里,每一行都是一个故事 🎏:你只管努力,剩下的交给时间 🏠 :小破站 微信公众平台、公众号、小程序联动 如何通过unionid获取到微信公众openid如何根据code获取微信公…

UI组件库---vantList组件接口多次调用大坑问题

问题描述:当使用refesh下拉操作时,vanlist组件会多次调用(大概三次)! 解决方案: 1、接口错误的时候,大量重复请求。 可能接口错误时vant3内部某些变量没重置,导致一直重复请求&am…

利用 STM32 实现多协议物联网网关:Modbus/Zigbee 到以太网/Wi-Fi 的数据桥接

摘要: 随着物联网技术的飞速发展,不同通信协议之间的互联互通成为了构建智能化系统的一大挑战。本文将以实战项目为例,详细介绍如何利用 STM32 微控制器实现 Modbus/Zigbee 与以太网/Wi-Fi 之间的协议转换,从而打通传感器数据上传至服务器的“…

短视频矩阵系统源代码开发---多种剪辑逻辑再次升级

揭秘AI短视频运营秘籍,轻松涨粉! 1、数据管理方面,我们提供了全面的账号及视频Top 10的数据统计服务。 2、在AI视频创意制作领域,我们采用原创视频批量剪辑、阶乘算法和去重原理,以提升内容的独特性和吸引力。 3、同…

【pytorch22】激活函数与GPU加速

激活函数 ReLu还是还是可能出现梯度弥散&#xff0c;因为x<0的时候&#xff0c;梯度还是可能小于0 leaky relu&#xff0c;在x<0的时候&#xff0c;梯度就不会为0&#xff0c;梯度不会不动 Relu函数在x0处是不连续的 一种更加光滑的曲线是SELU&#xff0c;是两个函数的…

FOC算法

如下图所示的&#xff0c;是FOC算法的整体流程图&#xff0c;下面图中最重要的部分就是SVPWM和3相全桥电路&#xff0c;和送给SVPWM进行运算&#xff0c;运算之后的结果为三个相差120的马鞍波&#xff0c;然后将这三相马鞍波作为控制全桥MOS开关的三个PWM波的占空比&#xff0c…

前端笔记-day13

文章目录 01-体验vw和vh02-vw适配02-适配.htmldemo.lessdemo.css 03-vw和vh不能混用03-vw和vh.htmldemo.lessdemo.css 04-综合案例-酷我demo.htmldemo.lessbase.lessdemo.css 酷我&#xff08;标准版&#xff09;index.htmlindex.lessindex.css 01-体验vw和vh <!DOCTYPE ht…

记一次线上流量突增问题排查

一.问题 接流量告警出现获取 xx 信息接口调用次数同比往年大促活动猛涨.扩大至 10 倍之多.心里顿时咯噔一下.最近各种严打,顶风作案.某不是摸到电门了.一下子要把自己带走.从此走向求职之路.一时间脑子哇哇的思绪万千. 202x.5.20 大促开门红的调用.这个是往年活动的时候的调用…

如何在 Odoo 16 中生成 CSV 报告

在 Odoo 中&#xff0c;我们需要生成多种类型的文件以用于不同的目的。CSV 报告允许用户从 Odoo 数据库导出结构化数据。CSV 格式受到各种应用程序和工具的广泛支持&#xff0c;因此可以轻松地与外部系统&#xff08;如电子表格&#xff08;例如 Microsoft Excel、Google Sheet…

谷歌云 | Gemini 大模型赋能 BigQuery 情感分析:解码客户评论,洞悉市场风向

情感分析是企业洞察客户需求和改进产品服务的重要工具。近年来&#xff0c;随着自然语言处理 (NLP) 技术的飞速发展&#xff0c;情感分析变得更加精准高效。Google 推出的 Gemini 模型&#xff0c;作为大型语言模型 (LLM) 的代表&#xff0c;拥有强大的文本处理能力&#xff0c…

生成图质量评价

1. RichHF-18K 论文地址 解决问题&#xff1a; 如何对生成图质量进行算法评价&#xff0c;以优化图片质量&#xff0c;提升模型生成能力 解决思路&#xff1a; 参考多模态模型&#xff0c;构建评价模型&#xff0c;从7个维度分三个分支对生成图进行测评&#xff1a; Tips&…

如何将overleaf的latex格式转换为word

安装pandoc https://pandoc.org/installing.html 下载安装后&#xff0c;打开windows shell&#xff0c;测试是否安装成功&#xff1a; pandoc -v使用代码转换 进入你防止latex的文件夹&#xff0c;运行以下命令&#xff1a; pandoc -o output.docx -t docx .\main.tex其中…

录制微课的软件有哪些?这些软件你不能错过!

随着在线教育的蓬勃发展&#xff0c;微课已成为一种广受欢迎的教学形式。微课录制软件的选择对于教师而言至关重要&#xff0c;它不仅要具备简单易用的特点&#xff0c;还要能够满足高质量录制的需求。而对于教师来说&#xff0c;录制微课的软件有哪些呢&#xff1f;本文将介绍…

【日常记录】【插件】js 获取浏览器信息、操作系统等相关信息

文章目录 1. 原生方式2. 插件的方式2.1 Bowser 的基本使用2.2 UAParser2.3 Platform.js 参考链接 1. 原生方式 原生方式可以通过 navigator.userAgent 来获取 需要写一个正则来匹配&#xff0c;获取相关的信息 2. 插件的方式 获取浏览器版本相关信息的库主要有以下几个 Bowser&…

高德API接入安卓相关问题说明

高德API接入安卓相关问题说明 我们都在怀念过去&#xff0c;失去后我们才懂得珍惜&#xff0c;有些人或事早已经远去&#xff0c;可是还是会想起曾经拥有的岁月&#xff0c;会是一种喜悦&#xff0c;会是一种遗憾…… 目前Android开发已经普遍使用Android Studio&#xff0c;开…

人工智能算法工程师(中级)课程1-Opencv视觉处理之基本操作

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下人工智能算法工程师(中级)课程1-Opencv视觉处理之基本操作。OpenCV&#xff08;Open Source Computer Vision Library&#xff09;是一个开源的计算机视觉和机器学习软件库。它提供了各种视觉处理函数&#xff0c;并…

红酒与电影经典:那些银幕上的醉人瞬间

在光影交织的银幕世界里&#xff0c;红酒不仅是品味生活的象征&#xff0c;更是情感与故事的催化剂。每当夜幕降临&#xff0c;一杯色泽深邃的红酒&#xff0c;便能带我们走进那些令人陶醉的影片瞬间&#xff0c;感受不同的人生百态。今天&#xff0c;就让我们一起回味那些银幕…

告别付费 API!使用 Ollama 和 MATLAB 玩转本地大模型

在“当MATLAB遇见ChatGPT&#xff1f;”一文中介绍了名为MatGPT的插件&#xff0c;该插件通过调用ChatGPT的API&#xff0c;实现了在MATLAB中与Chat GPT对话的功能。 虽然Open AI的GPT3.5和GPT4o可以免费使用&#xff0c;但调用API却需要收费&#xff0c;因此使用MatGPT这类插件…