我正在使用 webRTC Licode,我注意到,有时(它并不总是发生)大约两天后不使用 Licode,它会掉下来并停止工作。我收到以下错误。
有谁知道我该如何解决?
Licode 不使用后不会掉,它有时间同步问题。由于它是具有微服务架构的基于云的应用程序,所有服务都使用 CloudHandler 作为注册/发现服务。服务通过 rabbitmq 向云处理程序发送保持活动消息,云处理程序通过检查保持活动消息检查它们。两个事件之间的时间没有正确定义,它们之间的超时时间也没有正确定义。
当 Licode 启动时,Erizo 控制器事件开始变得太接近(由于计算时间),以至于 check-keep-alive 事件发生在 keep-alive 之前,因此云处理程序只是从其数据库中删除 erizo 控制器,从而使整个应用程序落下。
请记住,这并不完全正确,因为云处理程序在移除控制器之前会进行 n 次检查(n 在 licode_config.js 中定义),但时间超过了 n 次间隔时间
改善这一点的一种方法是 - 增加检查保持活动间隔 - 增加检查保持活动和保持活动事件之间的超时
您将在 cloudHandler.js 和 licode_config.js 中找到这些参数
希望能帮助到你