2014-02-20 128 views
1

目前我有一个服务器端用户列表,它被用户A的浏览器拉下来,然后在用户登录或注销时通过推送器在本地跟踪系统的状态。Pusher Channel上的Observer守护进程

随着用户A的状态更改,它会向服务器发送一个jax更新以通知其状态。

我在从数据库中拉下来的用户状态与在浏览器中跟踪用户的浏览器状态的本地跟踪之间存在不同步问题。

我想创建一个服务器端观察器,它不断监视推送器通道,并充当将客户端浏览器同步到数据库的冗余方法。

任何人都可以点我一个很好的解决的正确方向,以用于以下必要功能:

-Needs与推进整合,并能收听/响应事件,而不仅仅是发送JSON消息在通道

-Needs,用来接收所有通道

上公布我不确定什么库或解决方案的存在,可以收听到服务器上推渠道活动的所有事件。

任何建议将不胜感激。

+0

这个问题太过于主观,无法在Stackoverflow上得到解答。 –

+0

这只是因为问题的“语言”部分而听起来很主观。我建议将其删除。如何从服务器技术收听频道事件的问题非常有效。 – leggetter

回答

1

最好的解决方案是使用Pusher的WebHooks。这样做的好处是,您可以接收许多与用户活动相关的事件,并且将交付所有事件,即故障排队并重新发送。

WebHooks没有语言要求,因为它只是一个从Pusher到您定义的端点的HTTP请求。

现在你可以收到腾出通道和占领事件(如果一个通道有任何订户或无)和存在的事件(用户加入和离开频道)。 Pusher将来可能会将其他事件公开为WebHooks。

如果您要运行一个作为客户端连接的守护程序进程,那么在未连接客户端的时候,可能会丢失事件。网络宕机或重新连接阶段。