V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ClancyH
V2EX  ›  服务器

怎么用中转服务器降低目标服务器的带宽使用

  •  
  •   ClancyH · 2019-03-13 16:16:26 +08:00 · 3986 次点击
    这是一个创建于 2065 天前的主题,其中的信息可能已经有所发展或是发生改变。
    目前有两个机器从 A 服务器获取 rtsp 流,但是 A 服务器的带宽不够(因为不止一个 rtsp 流,而是每个 rtsp 都有两个来请求),之前想得是通过一个中间服务器,所有请求通过这个服务器来转发,理想的是只有中间服务器和 A 对每个 rtsp 流做通讯,目前用 nginx 的 stream 模块,发现实现不了,有人有比较好的思路或者成熟的方案吗?
    7 条回复    2019-03-13 17:06:24 +08:00
    mhycy
        1
    mhycy  
       2019-03-13 16:25:13 +08:00
    https://github.com/ossrs/srs
    不知道是否符合要求
    mason961125
        2
    mason961125  
       2019-03-13 16:25:58 +08:00
    各大云服务都有面向直播类的 CDN 吧。
    ClancyH
        3
    ClancyH  
    OP
       2019-03-13 16:47:02 +08:00
    @mhycy 我大致看了下这个是拉流之后推流的程序,但是我这边的情况是源服务器的带宽不够,就是现在多个机器都需要从源服务器获取 rtsp 流而不是获取最终的 rtmp 流,所以估计行不通,谢啦,我在想想吧
    mhycy
        4
    mhycy  
       2019-03-13 16:52:31 +08:00
    @ClancyH
    SRS 这套系统是用于构建流媒体 CDN 用的
    深挖一下应该符合需求,CDN 的中间节点大概就是你的需求状态
    ClancyH
        5
    ClancyH  
    OP
       2019-03-13 16:56:34 +08:00
    @mason961125 CDN 感觉在我这也只能做端口转发啊和 nginx 的 stream 功能类似,不过我对 CDN 没深入研究过,不过我这的需求是通过 B 服务器来处理原本对 A 服务器的请求达到降低对 A 服务器的带宽要求,理想的情况是所有机器访问 B 服务器来获取 A 服务器的实时流且 B 服务器只和 A 服务器建立一个 tcp 连接。
    zhs227
        6
    zhs227  
       2019-03-13 17:02:19 +08:00
    live555 server 里有一个 rtsp proxy,可以实现你说的。B 与 A 之间代理一个 Rtsp 请求,其它都通过 B 来请求。
    mason961125
        7
    mason961125  
       2019-03-13 17:06:24 +08:00 via iPhone
    @ClancyH #5 直播类 CDN 就是解决这个需求的。举个例子,主播在直播的时候上行带宽肯定不是很高,那么是怎么做到全国那么多人一起看的呢?肯定是先传输到 CDN,然后由 CDN 的边缘节点分发给用户。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1942 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 16:22 · PVG 00:22 · LAX 08:22 · JFK 11:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.