描述(Description)
- SRS版本(Version):
4.0
- SRS的配置如下(Config):
组一个 2origin, 2edge的集群, 2origin使用statefulsets, 2 edge用 deployment ,edge使用lb暴露1935端口
重现(Replay)
先推上一条流假设 使用的路径为 e1 -> o1
如果再推同一条流, 路径为 e1, 由于到一个机器,则推不上来,符合预期
路径为 e2 -> o1 , o1推不上来,符合预期
疯狂推,终于有一次使用 e2 -> o2 由于 o2 没有到 coworker o1 找流,所以也推上来了。
这个问题是因为涉及到中心状态,所以不解决么?还是认为这是合理的?
解决这个问题的方式也很简单: on_publish到中心服务获取流状态就行了。
或者添加o1 到 o2。。。其他源站找流是否存在的逻辑?
2条答案
按热度按时间uplii1fm1#
为何会出现o2没有到o1找流?是否有简单的重现路径?
iq0todco2#
为何会出现o2没有到o1找流?是否有简单的重现路径?
推流推到O2,O2没有去coworker O1找这个流是否在的代码逻辑
重现路径就如我所述:
配置:
Origin:
Edge:
疯狂的向SLB推一条流,就能重现.
Edge的origin配置是用于向origin lb的.
origin的 coworker是用于 edge拉origin,返回302的.
并没有推流publish时,origin看一下其他的coworker这流是否存在的逻辑