golang在视频直播平台的高性能实践(含ppt下载)

疯狂奔跑 疯狂奔跑     2022-08-09     337

关键词:

 

熊猫 TV 是一家视频直播平台,先介绍下我们系统运行的环境,下面这 6 大服务只是我们几十个服务中的一部分,由于并发量与重要性比较高,所以成为 golang 小试牛刀的首批高性能高并发服务。

 

技术分享

 

把大服务拆细, 然后服务化独立部署,更容易简化部署,也容易单点细节优化与升级。多数服务的能力是通用的,如平滑重启、多机房部署等。

 

技术分享

 

关于在线服务,如果 1000 万用户在线,即使每 30 秒一次在线 http 发送打点,那么也有每秒 30 万+的接口 qps。

 

Golang 提供的 http server 性能非常好,一个普通工程师如果做到单虚机支撑 1w - 2w 每秒的请求量,那么只需要 10 - 20 台后台服务器了。

 

用其他非高性能语言,需要的机器能需要多翻好几倍; C++ 性能足够,但对工程师要求很高。

 

技术分享

 

房间服务是主要服务, 需要核心保障,所以对房间服务里面的版块,进行了再细粒度的拆分。

 

对房间信息变更频繁的内容也采用独立存储,如人数计数等字段,这样的缺点是每次去房间信息会多带来一次额外的访问人数服务的成本。这也是架构设计需要权衡点之一。

 

技术分享

 

礼物系统是多数视频直播平台的标配,国内有礼物消费习惯的土豪不少,高峰期送礼物的并发量很大,尤其很多土豪对刷的时候。

 

礼物系统对一致性要求略高,所以存一份数据建多条索引也是一种选择,也可以降低对事务的依赖。

 

技术分享

 

弹幕交互方式是一个很不错的体验,更偏年轻化,大量用户喜欢通过这种方式与主播互动。

 

国内网络状况比较复杂,最好根据用户位置选择就近对应运营商的单线机房接入弹幕消息服务,让弹幕更及时。也可以用 BGP 机房,但网络带宽价格会比单线贵不少。

 

对于大房间,弹幕消息量特别大,主播与用户都看不过来, 在产品策略层面可以做一些体验上的优化。


技术分享

 

视频直播体验是整体平台最关键点,视频 CDN 是一种让用户就近获取所需流媒体的技术,且解决延时、卡顿等问题。 从技术角度不要只依赖某一 CDN 提供商或线路,业内很多视频直播平台都做了拉流线路互备,推流后视频(转码、转发)集群也是一个可优化的点,做互推是冗余了部分推流资源,但对优化直播流的体验与高可用性显而易见。

 

技术分享

 

包含自由业务逻辑的接口代理服务, 是很多公司都有的一个公共服务,可以把公司内网服务低成本的提供来外网来使用。不过需要考虑好外网安全策略,包括授权认证、服务关系映射、频率限制、业务资源隔离等

 

技术分享

 

能看到最后肯定是对我们技术及业务感兴趣的朋友,熊猫 TV 技术团队正在招聘 Golang 工程师,全部配备高配电脑与 DELL 双屏大屏幕显示器,并提供有挑战性的技术环境。感兴趣朋友请扫码进入(同时也有大量 PHP、前端、运维、DBA 等技术岗位)。

 

技术分享


[易学易懂系列|golang语言|零基础|快速入门|](代码片段)

...程语言,是google推出的一门语言。主要应用在系统编程和高性能服务器编程,有广大的市场前景,目前整个生态也越来越强大,未来可能在企业应用和人工智能等领域占有越来越重要的地位。本文章是【易学易懂系列|编程语言... 查看详情

今日头条架构演进之路——高压下的架构演进专题(含ppt)

...日头条架构演进经验。夏绪宏,今日头条架构师,专注对高性能大规模Web架构,云计算、性能优化、编程语言理论等方向,PHPcommitter,HHVM项目贡献者。2009加入百度 查看详情

视频干货教程高性能跨平台移动开发框架weex最佳实践

Weex作为阿里开源的高性能跨平台移动开发框架,开源至今倍受关注。这次WeexConf将是Weex团队首次全明星阵容集体亮相,大会上半场是一个关于Weex你不能错过的Keynote,下半场包含技术实践和最佳实践两个分论坛,让快速大家玩转... 查看详情

音视频业务挑战与优化实践,mxplayer在线播放优化,数据分析与播放器优化

音视频业务挑战与优化实践Topic《建设高性能终端平台——传音元宇宙的基础设施探索》赵玉东 传音控股游戏性能专家由于世界各地迥异的风土人情,文化偏好与基础设施建设水平,音视频业务在全球化的推广进程中遇... 查看详情

flutter浪潮下的音视频研发探索

...音视频研发探索,主要内容是针对闲鱼APP在当下流行的跨平台框架Flutter的大规模实践,介绍其在音视频领域碰到的一些困难以及解决方案。分享内容主要分为四个方面,首先会对Flutter有一个简单介绍以及选择Flutter作为跨平台框... 查看详情

蘑菇街电商交易平台服务架构及改造优化历程(含ppt)

蘑菇街电商交易平台服务架构及改造优化历程(含PPT)导读:高可用架构7月30日在上海举办了『互联网架构的基石』专题沙龙,进行了闭门私董会研讨及对外开放的四个专题的演讲,期望能促进业界对互联网基础架构的建设及发展... 查看详情

头歌里的课程视频怎样观看

...,了解CPU,GPU,TPU的区别;掌握算能TPU芯片BM1684架构以及平台的使用,及其交叉编译环境的搭建和使用;学习图像分类、目标检测、语义分割、实例分割等神经网络在TPU平台上的实现方法和技术;形成运用深度学习技术解决具体... 查看详情

云宏大讲坛关键应用在超融合环境下的实践

...机器架构正在加速瓦解,越来越多核心应用迁移到虚拟化平台。超融合系统的成熟和普及,更让关键应用得到新型的实践。)关键应用,是指对业务连续性和性能都要求非常高的应用,如ERP、CRM、核心交易系统等。一旦出现系统... 查看详情

prestocon超清视频和ppt我给你整好了

...人员将合作推进Presto的使用,将其作为一种高质量、高性能和可靠的软件,用于支持全球组织的分析平台,无论是在本地还是在云端。本次会议大概有20多个议题,干货还是挺多的。会议资料本次会议的PPT和视频... 查看详情

golang中更好的错误处理:理论和实践技巧

...可以接受的少数用例之一是错误后清理,因为该语言没有Golang-样式延迟语句)。如果你确实从源头捕获异常,你会得到一个不太优雅的Go错误模式版本。这可能会解决混淆代码的问题,但会遇到另一个问题:性能。在诸如Java之... 查看详情

蚂蚁区块链平台baas技术解析与实践

...。演讲中,李书博首先从技术方面介绍了蚂蚁区块链BaaS平台,随后从实践的角度介绍了客户如何快速地实现上链,最后带领大家一起详细地了解了平台的合作服务流程。李书博蚂蚁金服区块链BaaS技术总监本次直播视频精彩回顾... 查看详情

golangkubenetes容器多集群平台开发实践

前言  Go语言在基础服务开发领域优势     Go语言在高并发、通信交互复杂、重业务逻辑的分布式系统中非常适用,具有开发体验好、一定量级下服务稳定、性能满足需要等优势。随着kubernetes在企业中快... 查看详情

直播平台的数据库架构演变

8月24日,阿里云数据库技术峰会到来,本次技术峰会邀请到了阿里集团和阿里云数据库老司机们,为大家分享了一线数据库实践经验和技术干货。在本次峰会上,特邀嘉宾映客直播架构师王振涛分享了映客直播作为创业公司从0... 查看详情

大数据资产管理平台实践(ppt)

...企业提供更明智和更有效的决策数据支持。数据资产管理平台实现数据 查看详情

2019年最新总结,从程序员到cto,从专业走向卓越,大牛分享文档pdf与ppt整理

...衡利器HAProxy功能剖析及部署案例高可用技术的实践分享高性能存储及文件系统个性化推荐架构设计和实践搜狐视频工商数据中心架构创新之路互联网对传统企业应用架构基于Kafk 查看详情

物理隔离下的数据交换平台难点解析与实践

...章、前言:为什么?做什么?怎么做?第一章、数据交换平台的一些基本概念目录第零章、前言:为什么?做什么?怎么做?最近带队做了公司的一个项目,叫数据交换平台,旨在物理隔离的情况下对多端业务系统进行数据的加... 查看详情

golang在电商即时通讯服务建设中的实践

马蜂窝技术原创文章,更多干货请搜索公众号:mfwtech?即时通讯(IM)功能对于电商平台来说非常重要,特别是旅游电商。从商品复杂性来看,一个旅游商品可能会包括用户在未来一段时间的衣、食、住、行等方方面面;从消费... 查看详情

golang在电商即时通讯服务建设中的实践

马蜂窝技术原创文章,更多干货请搜索公众号:mfwtech即时通讯(IM)功能对于电商平台来说非常重要,特别是旅游电商。从商品复杂性来看,一个旅游商品可能会包括用户在未来一段时间的衣、食、住、行等方方面面;从消费金... 查看详情