The best way to understand what the Disruptor is, is to compare it to something well understood and quite similar in purpose. In the case of the Disruptor this would be Java's BlockingQueue. Like a queue the purpose of the Disruptor is to move data (e.g. messages or events) between threads within the same process. However there are some key features that the Disruptor provides that distinguish it from a queue. They are:
Multicast events to consumers, with consumer dependency graph.
Pre-allocate memory for events.
Optionally lock-free.
来源:
https://github.com/LMAX-Exchange/disruptor/wiki/Introduction