Kaa 对所有端点都有心率机制?? Kaa 会自动启动一个端点吗?
Kaa has heart-rate mechanism for all endpoints?? Will Kaa kick off one endpoint automatically?
端点连接到 Kaa 服务器并订阅一些主题。
在正常情况下,KaaClient 的 unsubscribeFromTopic() 和 stop() 方法会在断开 Kaa 服务器之前被调用。
在某些情况下,端点可能会突然断开与 Kaa 服务器的连接,并且不会立即重新连接到 Kaa 服务器(例如:断电...)。
如果endpoint没有调用unsubscribeFromTopic() & stop()方法断开kaa server,资源还是会被占用??
如果是,Kaa 服务器对所有端点都有心率机制??
如果 Kaa 服务器可以检测到某个端点已断开连接超过一段时间,它会自动启动一个端点吗??
简短的回答是肯定的,一旦不存在活动连接,Kaa 将释放资源。有一个乒乓机制来跟踪会话不活动。将使用的不活动超时是可配置的。有关详细信息,请参阅此 configuration file。
扩展答案:Kaa 使用基于 Akka 框架的 actor 系统来处理端点 requests/sessions。每个端点都有关联的端点参与者(实际上,至少有两个,一个在处理端点会话的节点上,一个全局参与者用于 Kaa 集群中的特定端点)。一旦没有可用的活动会话,此参与者就会安排超时。
端点连接到 Kaa 服务器并订阅一些主题。 在正常情况下,KaaClient 的 unsubscribeFromTopic() 和 stop() 方法会在断开 Kaa 服务器之前被调用。
在某些情况下,端点可能会突然断开与 Kaa 服务器的连接,并且不会立即重新连接到 Kaa 服务器(例如:断电...)。
如果endpoint没有调用unsubscribeFromTopic() & stop()方法断开kaa server,资源还是会被占用?? 如果是,Kaa 服务器对所有端点都有心率机制?? 如果 Kaa 服务器可以检测到某个端点已断开连接超过一段时间,它会自动启动一个端点吗??
简短的回答是肯定的,一旦不存在活动连接,Kaa 将释放资源。有一个乒乓机制来跟踪会话不活动。将使用的不活动超时是可配置的。有关详细信息,请参阅此 configuration file。
扩展答案:Kaa 使用基于 Akka 框架的 actor 系统来处理端点 requests/sessions。每个端点都有关联的端点参与者(实际上,至少有两个,一个在处理端点会话的节点上,一个全局参与者用于 Kaa 集群中的特定端点)。一旦没有可用的活动会话,此参与者就会安排超时。