2014-02-20 76 views
1

目前我有一個服務器端用戶列表,它被用戶A的瀏覽器拉下來,然後在用戶登錄或註銷時通過推送器在本地跟蹤系統的狀態。Pusher Channel上的Observer守護進程

隨着用戶A的狀態更改,它會向服務器發送一個jax更新以通知其狀態。

我在從數據庫中拉下來的用戶狀態與在瀏覽器中跟蹤用戶的瀏覽器狀態的本地跟蹤之間存在不同步問題。

我想創建一個服務器端觀察器,它不斷監視推送器通道,並充當將客戶端瀏覽器同步到數據庫的冗餘方法。

任何人都可以點我一個很好的解決的正確方向,以用於以下必要功能:

-Needs與推進整合,並能收聽/響應事件,而不僅僅是發送JSON消息在通道

-Needs,用來接收所有通道

上公佈我不確定什麼庫或解決方案的存在,可以收聽到服務器上推渠道活動的所有事件。

任何建議將不勝感激。

+0

這個問題太過於主觀,無法在Stackoverflow上得到解答。 –

+0

這只是因爲問題的「語言」部分而聽起來很主觀。我建議將其刪除。如何從服務器技術收聽頻道事件的問題非常有效。 – leggetter

回答

1

最好的解決方案是使用Pusher的WebHooks。這樣做的好處是,您可以接收許多與用戶活動相關的事件,並且將交付所有事件,即故障排隊並重新發送。

WebHooks沒有語言要求,因爲它只是一個從Pusher到您定義的端點的HTTP請求。

現在你可以收到騰出通道和佔領事件(如果一個通道有任何訂戶或無)和存在的事件(用戶加入和離開頻道)。 Pusher將來可能會將其他事件公開爲WebHooks。

如果您要運行一個作爲客戶端連接的守護程序進程,那麼在未連接客戶端的時候,可能會丟失事件。網絡宕機或重新連接階段。