I've been experimenting with the perspective broker in Twisted 1.1.0 and am wondering? Is there any graceful way to reconnect and continue to use PB references if you temporarily lose a connection due to a network outage?
For example, I can envision my application as being a client that connects to a remote application server, and while running may have any number of PB references to that remote application server in various data structures in the client. Should there be a transient network outage such that the TCP session to the server is interrupted, I'd like to be able to reconnect without having to flush all such data in the client.
I'm still experimenting, but the docs and some early tests would seem to imply that if the TCP link breaks for any reason then any of my object references can never be used again. Is that in fact true and/or is there any way to avoid such a condition? I was hoping that I could catch network errors in some manner such that I could try to re-establish the PB link, and then permit existing references from the prior connection to continue to function could severely impact a client (or certainly impose a potentially large effort to restore any remote state to newly viable references).
What do other perspective broker applications do about being as robust as possible in the presence of transient network conditions?
Thanks for any info/suggestions.