答案 0 :(得分:0)
Licode在不使用后不会掉落,它存在时间同步问题。由于它是具有微服务架构的基于云的应用程序,因此所有服务都将CloudHandler用作注册表/发现服务。服务通过rabbitmq向云处理程序发送保持活动消息,云处理程序通过检查保持活动消息检查它们。两次事件之间的时间定义不正确,两次事件之间的超时也未正确定义。
当Licode启动时,Erizo Controllers事件开始变得过于接近(由于计算时间),以致在保持活动之前发生check-keep-alive事件,因此云处理程序只是从其数据库中删除了erizo控制器,这使得整个申请失败了。
请记住,这并非完全正确,因为云处理程序在移除控制器之前会进行n次检查(n在licode_config.js中定义),但是时间超过间隔时间的n倍
一种改进方法是 -增加检查保持间隔 -增加检查保持活动和保持活动事件之间的超时时间
您将在cloudHandler.js和licode_config.js中找到这些参数
希望有帮助