LMAX's disruptor pattern: is there a port to C++? [closed]
Asked Answered
B

3

15

There are open source Java and .NET versions of LMAX's Disruptor pattern, as described in the video LMAX - How to Do 100K TPS at Less than 1ms Latency. Here is more links to information on the Disruptor pattern.

Is anyone aware of a port of the Disruptor pattern to C++, either finished or in beta?

Update

Apparently others are calling for a C++ version of the Disruptor pattern.

Buiron answered 4/8, 2011 at 14:49 Comment(0)
S
11

Yes, there is already a functional C++ port. See http://www.2robots.com/2011/08/13/a-c-disruptor/.

Shingly answered 14/8, 2011 at 2:27 Comment(3)
Project's code moved to github.com/fsaintjacques/disruptor--Sporocarp
do someone know if it compiles under Windows?Rampant
i've tried to compile in Windows but received several errors. DISALLOW_COPY_AND_ASSIGN is unknown macros and also gettimeofday function is linux-only. But it seems most part of the code is pretty portable, it's sad that these several places is not surrounded with "WIN32" ifdef...Rampant
J
3

From the above link ("others are calling.."), comments:

Thread for discussing upcoming C++ port of the Disruptor pattern: http://groups.google.com/group/lmax-disruptor/browse_thread/thread/4a47a0a9b5837ca2

Performance of C++ version of Disruptor: approx. 22 million messages per second, with batching this reaches up to 100 million messages per second, see: http://mechanical-sympathy.blogspot.com/2011/08/inter-thread-latency.html

Jamison answered 12/8, 2011 at 16:17 Comment(2)
Is it possible to write a port in c#? Asking this question here: #8097872Quita
The C# port is available at code.google.com/p/disruptor-netEmalee
A
2

There is a free version called hmbdc-base.rpm that can be downloaded from:

https://bitbucket.org/hmbd/hmbdc-rel/downloads

It supports CentOS 7, and doesn't rely on virtual functions, sub microsecond delay, very fast.

It also has reliable subscribe / publish multicast messaging support.

Alfie answered 26/7, 2016 at 22:10 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.