为什么流媒体直播的延迟很高

Posted by 夏泽民

https://draveness.me/whys-the-design-live-streaming-latency 通信技术的发展促进了视频点播和直播业务的兴起,4G 和 5G 网络技术的进步也使得流媒体技术变得越来越重要,但是网络技术并不能解决流媒体直播的高延迟问题,本文不会介绍网络对直播业务的影响,而是会分析直播中常见的现象 — 主播和观众之间能够感觉到的明显网络延迟。除了业务上要求的延迟直播之外,有哪些因素会导致视频直播的延迟这么高呢? 当观众通过弹幕与主播进行互动时,从我们看到弹幕到得到主播的响应可能要经过 5s 甚至更长的时间,虽然主播看到弹幕的时间与观众看到弹幕的时间不会有太大的差别,但是直播系统将主播的音视频数据传输到客户端或者浏览器需要较长的时间,这个从主播端到观众端传输数据的时间一般被称作端到端的音视频延迟。



gojsonq

Posted by 夏泽民

https://juejin.im/post/5e53e2efe51d4527196d5352 在日常工作中,每一名开发者,不管是前端还是后端,都经常使用 JSON。JSON 是一个很简单的数据交换格式。相比于 XML,它灵活、轻巧、使用方便。JSON 也是RESTful API推荐的格式。有时,我们只想读取 JSON 中的某一些字段。如果自己手动解析、一层一层读取,这就变得异常繁琐了。特别是在嵌套层次很深的情况下。今天我们介绍gojsonq。它可以帮助我们很方便的操作 JSON。 快速使用 先安装: $ go get github.com/thedevsaddam/gojsonq 复制代码后使用: package main



goim

Posted by 夏泽民

https://github.com/Terry-Mao/goim https://juejin.im/post/5cbb9e68e51d456e51614aab goim 是 非常成功的 IM (Instance Message) 即时消息平台, 依赖项为 kafka ( 消息队列) + zookeeper ( 扩展/均衡 ) + bilibili/discovery( 在 netflix/eureka上扩展的服务注册与发现, golang 实现) 作为一个曾经的架构师(2005~2014, Utstarcom IPTV/OTT 事业部) 与当前自由职业者(你懂的~~~~), 时常在 Golang 圈转转, 有朋友聊到IM 并提到goim, 我作了一些学习与研究 中国 B站( BiliBili ) 的技术领军 毛剑 是我神交以久的技术专家, goim 是一个非常成功的架构示例, 其模块拆分, 接口设计, 技术选型 ,部署方式 以及持续改进演变, 都是一个互联网商用项目典范. https://juejin.im/post/5e51834451882549554863e2 https://juejin.im/post/5cbd380c5188250a97133649



Go 高级并发

Posted by 夏泽民

如果你曾经使用过 Go 一段时间,那么你可能了解一些 Go 中的并发原语:



error

Posted by 夏泽民

https://gocn.vip/topics/9858 在过去的十年中,Go 将 错误作为数值的处理对我们很有帮助。尽管标准库对错误的支持非常少 —— 只有 errors.New 和 fmt.Errorf 函数,它们产生的错误仅包含消息 —— 内置的 error 接口允许 Go 程序员添加所需的任何信息。它所需要的只是一种实现 Error 方法的类型:



Search

Popular posts

Anything in here will be replaced on browsers that support the canvas element

Recent posts

This blog is maintained by 夏泽民

Get in touch with me at 465474307@qq.com

Subscribe to our mailing list

* indicates required