Servers and Remoting

51 views
Skip to first unread message

P Martin

unread,
Jun 19, 2013, 4:12:51 PM6/19/13
to jetla...@googlegroups.com
Hi there,

My student and I are using jetlang to implement an actor-based robot control framework. We would like to leverage the newer remoting library to allow for robots to subscribe to logical channels. During our exploration of the code, it occurred to us that if a robot had a server and it went down it would cause the channel to "die" and disconnect the other robots. Does anyone have suggestions on how you could do the remote channels in a more robust way? Should we have multiple servers? (Is that feasible?) Should we have robots create new servers when any others go down?

Any ideas would be great!

Patrick

Mike Rettig

unread,
Jun 20, 2013, 10:16:50 PM6/20/13
to jetla...@googlegroups.com
The remoting library is designed for stateful client/server asynchronous connections. It provides callbacks for both the client and acceptor disconnect events, so failures can be handled gracefully.  There is also a read timeout event which can be used to detect an unresponsive system which is still connected.

I use it in production every day. The systems I work on implement graceful disconnect logic to handle failures. For example, if a system loses its connection to a server it will automatically disable until the connection is restored.  Jetlang remoting automatically tries to connect when a connection is dropped.

You can have multiple servers and implement some connection logic that automatically round robins on failure or just use a tcp load balancer. Do you expect to have failures? 

Mike



--
You received this message because you are subscribed to the Google Groups "jetlang-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jetlang-dev...@googlegroups.com.
To post to this group, send email to jetla...@googlegroups.com.
Visit this group at http://groups.google.com/group/jetlang-dev.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

P Martin

unread,
Jun 21, 2013, 8:33:48 AM6/21/13
to jetla...@googlegroups.com
Thanks for your reply! That discussion helps clarify how the remoting works. We do expect robots to come into and out of networks, usually due to power loss. I will look into the callback mechanisms to develop a smart way to recover remote channels.

Thanks for developing this library - I have been using the core jetlang for a few years and find it useful in my research.

Patrick
Reply all
Reply to author
Forward
0 new messages