Publisher-Subscriber architecture with a central registry where agents can either promote their capabilities or search for a given capability.
The project must be developed with C/C++. A GUI used to compose a chain of agents is a nice-to-have (not necessarily C or C++).
Current state of my thinking
- Set up the Publisher-Subscriber in place using ZeroMQ
- The central registry (or notice-board) role is only to connect agents between them using sockets
- Data serialization is performed either with MessagePack or FlatBuffers
It's the first time I'm asked to develop a Publisher/Subscriber architecture and I've never used the libraries I listed above.
Does my approach look good to you?