直播网站架构设计



我想建立一个网站,可以向多个用户(<100(显示实时流,延迟<500ms。直播流的来源将来自不同的树莓派相机模块。

到目前为止,我想到的架构如下:

树莓派-使用RTSP 将流广播到我的网络服务器

Web服务器-运行Apache/Nginx+Janus网关(接收RTSP流并将其转换为WebRTC,然后将流转发给客户端(

客户端-运行Chrome、Firefox、Safari 的用户

我的问题是:

  1. 此设置是否缺少任何内容?如果没有,此设置是否能够提供<500ms延迟流到我的用户,还是这是我只能通过自己实现和测量才能发现的?我可以考虑的其他技术堆栈?

  2. 如何在web服务器上执行负载测试/负载平衡?(需要一些关键词/工具来谷歌搜索我自己(

  1. 如果单个服务器实例无法以可接受的延迟处理预期数量的客户端,您可能应该考虑添加更多服务器的能力,以及负载平衡和/或水平扩展
  2. 有一些像TestRTC这样的服务可以用于负载测试您的部署,如果您喜欢免费和开源的解决方案,您可以看看Apache JMeter加JSR223测试元素与Groovy加GStreamer

最新更新