模块功能描述
- push转推:支持同时多个push转推,并且有失败重推机制
- pull回源拉流:
- 回源拉流,只支持单个回源拉流,且拉流失败没有重试机制
- 支持static预拉流,且有重试功能,进程起来就开始拉流
以下是模块源码里面给出的功能图,很直接清晰描述了push和pull的过程

源码解读
本模块的源码主要理解relay模块数据怎么组织设计,和对端服务rtmp交互相关逻辑,连接关闭回收
relay的数据结构
ngx_rtmp_relay_static_t结构体主要是预拉流的一些数据
typedef struct {
ngx_rtmp_conf_ctx_t cctx; // 保存了整个配置文件的信息main,srv, app
ngx_rtmp_relay_target_t *target; // 回源相关的地址信息等
} ngx_rtmp_relay_static_t;
rtmp交互逻辑
relay模
本文详细介绍了 Nginx RTMP Relay 模块的功能,包括 push 转推、pull 回源拉流、static 预拉流等。源码解读部分探讨了数据结构、RTMP 交互逻辑和回源请求流程。同时,文章指出模块存在的问题,如无回源失败重试机制,并提出了改进方案,如增加主备切换和重试策略。
订阅专栏 解锁全文
4215

被折叠的 条评论
为什么被折叠?



