Skip to content
This repository has been archived by the owner on Jun 21, 2022. It is now read-only.
/ disruptorWizard Public archive

A simple DSL to make using the LMAX disruptor pattern simpler.

License

Notifications You must be signed in to change notification settings

ajsutton/disruptorWizard

Folders and files

NameName
Last commit message
Last commit date
Jul 16, 2011
Jul 26, 2011
Jul 2, 2011
Jul 26, 2011
Jul 2, 2011
Jul 2, 2011
Jul 26, 2011
Jul 2, 2011
Feb 11, 2020

Repository files navigation

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);

About

A simple DSL to make using the LMAX disruptor pattern simpler.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages