You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, audience list is not reliable because we are using web-socket to maintain and pass-on information about newly connected client and recently disconnected client. But sometimes client miss these events, and we end-up with stale clients in the Audience list.
Possible Solution
To improve and handle this web-socket message drop issue we can use a simple Heartbeat / Ping-Pong kind of mechanism i.e. all connected clients will send ping message to all another client and every client will keeping last received ping time and in case of crossing threshold difference in time client will fetch a fresh Audience list to all connected from Redis.
The text was updated successfully, but these errors were encountered:
There are two reasons / angles where audience is not reliable:
Lack of global order of signals and no guaranteed delivery of signals
Potential reliability of redis
We are going to address #1 - this is tracked (for now) in internal document.
There should be no direct work required on client side to support new flow.
That said, I'll be opening other issues in related areas soon, namely when connected events fire relative to audience population.
Problem
Currently, audience list is not reliable because we are using web-socket to maintain and pass-on information about newly connected client and recently disconnected client. But sometimes client miss these events, and we end-up with stale clients in the Audience list.
Possible Solution
To improve and handle this web-socket message drop issue we can use a simple Heartbeat / Ping-Pong kind of mechanism i.e. all connected clients will send ping message to all another client and every client will keeping last received ping time and in case of crossing threshold difference in time client will fetch a fresh Audience list to all connected from Redis.
The text was updated successfully, but these errors were encountered: