5 ms·
Sorry, I misunderstood. If you need a total message order and many-to-all messaging it is indeed hard to do better than the Disruptor, but that's kind of a ver
by gpderetta 5y ago
Sorry, I misunderstood.
If you need a total message order and many-to-all messaging it is indeed hard to do better than the Disruptor, but that's kind of a very specialized need. If you can relax the message ordering for example, multiple 1-to-all queues can be significantly more efficient.
- bob1029 5y ago> that's kind of a very specialized need I somewhat disagree with this. I have been able to build a lot of business systems that have nothing to do with fintech on top of the exact same abstraction. Order matching engines are not the only thing that can benefit from being able to deal with millions of serialized events per second. Most video games, especially multiplayer ones, can benefit from this style of abstraction too.
- gpderetta 5y agoDo you really need a total ordering of messages instead of the partial ordering that separate queues could give you? Also do you really need broadcasting or point-to-point or anycasting would be more appropriate? That's what I mean by specialized.
- bob1029 5y ago> Do you really need a total ordering of messages instead of the partial ordering that separate queues could give you? If the consequences of any given event may impact the processing of any subsequent event, then yes. For many ordinary systems this constraint holds true.
- gpderetta 5y agoBut partial ordering is often sufficient to maintain causality, total ordering might be overkill.