Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
A simple DSL to make using the LMAX disruptor pattern simpler.
branch: master

This branch is even with ajsutton:master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib
src
.gitignore
DisruptorWizard.iml
LICENCE.txt
README.md
build.xml
disruptorWizard.ipr
pom.xml

README.md

Disruptor Wizard

The disruptor wizard is a simple DSL to make setting up the LMAX Disruptor simpler. The LMAX disruptor itself is an extremely high performance, low latency method of passing data between producers and consumers in a lock-free manner. It was developed by LMAX as part of their financial trading platform.

Examples

A simple consumer chain where A must process events before B which must be before C which in turn must be before D.

DisruptorWizard dw = new DisruptorWizard(ENTRY_FACTORY, ringBufferSize, executor);
dw.consumeWith(A).then(B).then(C).then(D);

A diamond shape dependency where A and B process any event. C depends on A, D depends on B and E depends on all previous tasks.

dw.consumeWith(A, B);
dw.after(A).consumeWith(C);
dw.after(B).consumeWIth(D);
dw.after(C, D).consumeWith(E);
Something went wrong with that request. Please try again.