Open smithed opened 9 years ago
The purpose is to create a more robust and reliable version of AMC that will rely on a connection-based network architecture. It will require additional functions for creating and managing AMC connections between targets. The connection management should likely be its own library that may be used with other network communication protocols and interfaces.
By the way, the libraries I mentioned being a good fit for what AMC does were zeromq and nanomsg. Both are essentially queues where you can easily adjust the protocol (in-process to inter-process to TCP) and the target (local vs remote) by changing the connection string. Jack has created a wrapper and his own branch which added websocket support to the library. The downsides are that zeromq is not officially multi-threadable and nanomessage still has some weird issues on shutdown due to a race condition and an assert. Jack had been working on fixing those.
Migrated from internal feature list