本文主要介绍在线教育这个行业,文章最早发表在我们的微信公众号上,支持原创,详见这里,
欢迎关注微信公众号blackerteam,更多详见www.rtc.help
先简单介绍什么是p2p?
p是peer的缩写,p2p就是点对点,两个客户端直接进行数据交互,不需要经过服务器转发(relay),这种方式能大大减轻服务端的负载,所以特别视适合大数据的传输,比如视频流,大文件。
之前很多朋友在问p2p成功率大概是多少?
其实这个问题不太好回答但又好回答:不太好回答是因为不同区域网络状况不一样所以很难有统一的答案;好回答是因为如果遵循ICE协议,基本上能打洞成功的网络他都能p2p,不能打洞成功的网络基本上都是跟路由器类型有关,与技术无关。
根据google官方文档,92%的情况下都可以p2p,看到这里很多朋友很高兴,心理有底了,在国内70~80%的成功率是可以期待的,以前做的文件传输也可以用p2p了,其实微软的win10升级也是这么搞的,p2p优先,节省宝贵的服务端资源嘛。
知道了p2p成功率,我们再来看1对1的视频通话,如果支持p2p那理论上一台普通的阿里云服务器其实就可以支持比较高的并发了,因为大部分的视频流都不需要经过服务器relay,但这时候有人可能会问:“和relay相比,p2p效果怎样?”
这个问题其实也不好回答,因为某些极端情况下p2p有可能不如服务器relay,但我们可以参考qq和whatsapp的做法。
根据我们之前的测试,qq现在1对1视频通话打洞逻辑和成功率基本上跟webrtc一样(当时模拟了各种网络状况,联通、电信、移动、全锥、对称等等),p2p优先,失败时才启用relay。whatsapp其实也差不多,只不过为了加快连接的建立,他采用relay优先,p2p建立后就会切换过来,对这部分感兴趣的朋友可以去查看我们博客上的相关文章。
所以了解了p2p,qq,whatsapp的这些逻辑之后,你下次跟朋友视频就不用担心qq后台录音录像的问题了,这些东西太占资源了,最起码他们现阶段不会去做,如果要这么做他们就不会使用p2p了。
看到这里一些朋友就会问,既然大部分视频通话可以p2p解决,那采用第三方厂商方案的时候直接按用户数计费是不是不合理?因为p2p下根本不需要占用服务端太多资源。
是的,没错,所以很多厂商的服务支持私有云部署,也就是我们自己提供服务器,他们负责部署,这样我们既不用担心数据安全性,又可以节省成本,还可以满足自身其他业务需求!
当然说到私有云部署就必然要涉及到分布式部署甚至是全球部署,至于是否需要分布式部署,怎么分布式部署我们下回分享。
喜欢相关文章请转发此文,或扫描下方二维码关注我们的微信公众号:blackerteam
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述