Overview of the motivation and design principles behind Aeron
Separation of concerns (similar to the Actor model but [potentially] cross-process) allows for fast, cache-friendly, single-threaded code in each actor.
The PCIe protocol allows for bus-to-bus communication (!!!)
The entire dataflow path is wait-free (I’m not entirely sure if lock-free == wait-free or if there’s some nuance involved), and this allows for data structures to be safely shared across process boundaries.
Among other things, this is a huge win for observability/debugging.