ZIO design discussion
During the course of development, a number of design documents are written to help solidify thoughts.
- An attempt at a big picture.
- A logging interface is used and provided to users of the ZIO C++ library.
- A node collects ports to implement a network of ZIO applications as a ported graph.
- A peer provides distributed discovery and presence
- A message schema is used for all ZIO messages.
- An outbox gives "logger" type interface to emit free text strings or structured metrics
- A protocol called flow provides simpler message transfer than using ports directly
- A flow broker brings flow clients together with server-side flow handlers, such as those that may manage file resources.
- A task broker implements (as domo) a reliable service oriented task queue based on ZeroMQ majordomo design.
- Utility support to pack tensors into messages.