Kevin Burton wrote:
Here's a good reason for each client to know it's session status
(connected/disconnected/expired). Depending on the application, if L does
not have a connected session to the ensemble it may need to be careful how
it acts.
connected/disconnected events are given out in the current API but when I
shutdown the full ensemble I don't receive a session expired.
At the risk of being overly clear... ;-)
When you shutdown the full ensemble all clients of the ensemble will be
disconnected from the ensemble. Regardless of each client's
participation in the overall application architecture they should
probably consider being disconnected a "bad thing" and act appropriately
(granted this is highly dependent on the particular use cases...). For
example followers won't know who the leader is... leaders won't know if
they are still leaders... etc...
I'm considering implementing my own session expiration by tracking how long
I've been disconnected.
In the extreme you could just close the session each time you got
disconnected.
Patrick