An IO Command is sent to an IO System, which then routes the command to a
random worker using a round-robin router. If you want more determinism over
how items are distributed across workers, just use multiple IO Systems
TODO: It may be a better idea to move these into WorkerCommand with a tag
trait to show they can be accepted by the IOSystem, and then also add
methods onto the IOSystem to eliminate confusion
An IO Command is sent to an IO System, which then routes the command to a random worker using a round-robin router. If you want more determinism over how items are distributed across workers, just use multiple IO Systems
TODO: It may be a better idea to move these into WorkerCommand with a tag trait to show they can be accepted by the IOSystem, and then also add methods onto the IOSystem to eliminate confusion