http://toutiao.com/i6256894054273909249/

熊猫 TV 是一家视频直播平台,先介绍下我们系统运行的环境,下面这 6 大服务只是我们几十个服务中的一部分,由于并发量与重要性比较高,所以成为 golang 小试牛刀的首批高性能高并发服务。Golang在视频直播平台的高性能实践(含PPT下载)把大服务拆细, 然后服务化独立部署,更容易简化部署,也容易单点细节优化与升级。多数服务的能力是通用的,如平滑重启、多机房部署等。Golang在视频直播平台的高性能实践(含PPT下载)关于在线服务,如果 1000 万用户在线,即使每 30 秒一次在线 http 发送打点,那么也有每秒 30 万+的接口 qps。Golang 提供的 http server 性能非常好,一个普通工程师如果做到单虚机支撑 1w - 2w 每秒的请求量,那么只需要 10 - 20 台后台服务器了。用其他非高性能语言,需要的机器能需要多翻好几倍; C++ 性能足够,但对工程师要求很高。Golang在视频直播平台的高性能实践(含PPT下载)房间服务是主要服务, 需要核心保障,所以对房间服务里面的版块,进行了再细粒度的拆分。对房间信息变更频繁的内容也采用独立存储,如人数计数等字段,这样的缺点是每次去房间信息会多带来一次额外的访问人数服务的成本。这也是架构设计需要权衡点之一。Golang在视频直播平台的高性能实践(含PPT下载)礼物系统是多数视频直播平台的标配,国内有礼物消费习惯的土豪不少,高峰期送礼物的并发量很大,尤其很多土豪对刷的时候。礼物系统对一致性要求略高,所以存一份数据建多条索引也是一种选择,也可以降低对事务的依赖。Golang在视频直播平台的高性能实践(含PPT下载)弹幕交互方式是一个很不错的体验,更偏年轻化,大量用户喜欢通过这种方式与主播互动。国内网络状况比较复杂,最好根据用户位置选择就近对应运营商的单线机房接入弹幕消息服务,让弹幕更及时。也可以用 BGP 机房,但网络带宽价格会比单线贵不少。对于大房间,弹幕消息量特别大,主播与用户都看不过来, 在产品策略层面可以做一些体验上的优化。Golang在视频直播平台的高性能实践(含PPT下载)视频直播体验是整体平台最关键点,视频 CDN 是一种让用户就近获取所需流媒体的技术,且解决延时、卡顿等问题。 从技术角度不要只依赖某一 CDN 提供商或线路,业内很多视频直播平台都做了拉流线路互备,推流后视频(转码、转发)集群也是一个可优化的点,做互推是冗余了部分推流资源,但对优化直播流的体验与高可用性显而易见。Golang在视频直播平台的高性能实践(含PPT下载)包含自由业务逻辑的接口代理服务, 是很多公司都有的一个公共服务,可以把公司内网服务低成本的提供来外网来使用。不过需要考虑好外网安全策略,包括授权认证、服务关系映射、频率限制、业务资源隔离等。Golang在视频直播平台的高性能实践(含PPT下载)能看到最后肯定是对我们技术及业务感兴趣的朋友,熊猫 TV 技术团队正在招聘 Golang 工程师,全部配备高配电脑与 DELL 双屏大屏幕显示器,并提供有挑战性的技术环境。感兴趣朋友请扫码进入(同时也有大量PHP、前端、运维、DBA 等技术岗位)。

Golang在视频直播平台的高性能实践的更多相关文章

  1. Golang在视频直播平台的高性能实践(含PPT下载)

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

  2. 论语音社交视频直播平台与 Apache DolphinScheduler 的适配度有多高

    在 Apache DolphinScheduler& Apache ShenYu(Incubating) Meetup 上,YY 直播 软件工程师 袁丙泽 为我们分享了<YY直播基于Ap ...

  3. Azure 媒体服务发布可靠的视频直播平台

    Sudheer Sirivara Azure 媒体服务总监 两个月前,Azure 媒体服务发布了视频直播和内容保护产品的公共预览版.这一 Internet规模的直播解决方案已被十余家业界领先的国际广播 ...

  4. 基于Red5的视频直播平台

    搭建环境:Win2008 server + jdk1.8+red5-server-1.0.6 下载地址:https://github.com/Red5 修改启动配置文件(修改为jdk路径): 安装模版 ...

  5. 基于开源Red5搭建的视频直播平台

    开始之前,为了便于大家了解Red5,此处引用网络文字,非原创 引言 流媒体文件是目前非常流行的网络媒体格式之一,这种文件允许用户一边下载一边播放,从而大大减少了用户等待播放的时间.另外通过网络播放流媒 ...

  6. 零基础如何一步一步开始搭建高性能直播平台?现以GitChat·架构来进行说明

    前言 现在直播已经成为移动互联网时代一个新的重要流量入口,从YY.斗鱼到花椒直播,直播已经成为人们分享交流的新方式,应用场景众多,主要分为: 金融类直播:金融直播可应用于实时解盘,在线专家讲座,专家在 ...

  7. iOS平台基于ffmpeg的视频直播技术揭秘

    现在非常流行直播,相信很多人都跟我一样十分好奇这个技术是如何实现的,正好最近在做一个ffmpeg的项目,发现这个工具很容易就可以做直播,下面来给大家分享下技术要点: 首先你得编译出ffmpeg运行所需 ...

  8. 基于Spring4+SpringMVC4+Mybatis3+Hibernate4+Junit4框架构建高性能企业级的部标1077视频监控平台

    开发企业级的部标GPS监控平台,投入的开发力量很大,开发周期也很长,选择主流的开发语言以及成熟的开源技术框架来构建基础平台,是最恰当不过的事情,在设计之初就避免掉了技术选型的风险,避免以后在开发过程中 ...

  9. 基于EasyDarwin云视频平台的幼儿园视频直播(手机直播/微信直播)解决方案

    一.方案介绍 1.1.方案背景 在2016年10月25日至28日的安博会上,我们看到了不少的幼教平台厂商,我们注意到大部分的幼教平台,为了追求极佳的用户体验,在微信或者APP端能够做到极快的打开速度, ...

随机推荐

  1. 【转】Compile FFmpeg on CentOS 6.x

    This guide is based on a minimal CentOS installation and will install FFmpeg with several external e ...

  2. 关于 Unity 中 ModelImporter.optimizeGameObjects

         ModelImporter.optimizeGameObjects 能够优化骨骼动画,将无用的骨骼合并,效率测试官方给出的数据差距比较大( Unity CJ 干货分享:全新的Unity移动游 ...

  3. Phonegap3.4 教程

    英文原扯:http://coenraets.org/blog/cordova-phonegap-3-tutorial/ 我只是对着原文学习一遍,记录在这里,一来为了加深印象(边翻译边学习),二来为了自 ...

  4. 2014-5-23 s3c2440到手

    ( 之前的开发板是s5pv210  (contex  A8)); 现在入手JZ2440......................

  5. Java笔记(一)……概述

    一.Java是什么 Java是SUN(Stanford University Network,斯坦福大学网络公司)1995年推出的一门高级编程语言. 二.Java的发展简史 在20世纪90年代初,Su ...

  6. URL方式访问Hadoop的内容

    * 1.设置url支持hadoop,FsUrlStreamHandlerFactory      * 2.创建URL对象,指定访问的HDFS路径      * 3.openStream获取输入流对象, ...

  7. UVa1449 - Dominating Patterns(AC自动机)

    题目大意 给定n个由小写字母组成的字符串和一个文本串T,你的任务是找出那些字符串在文本中出现的次数最多 题解 一个文本串,多个模式串,这刚好是AC自动机处理的问题 代码: #include <i ...

  8. FPGA开发板

    kingst.cnblogs.com 各种应用需要的接口不同: 做数字信号处理的,需要有AD/DA, 做图像处理,需要有图像接口.如果是通信的,需要有通信的接口,例如PCI/LVDS等.... 然后根 ...

  9. ios中view的生命周期

  10. mysql group by 用法解析(详细)

    在使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供 有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重记录的 ...