Questions tagged [lmax]

LMAX is a retail financial trading platform.

It appears it's a synonym of and ultimately should become so. Read info page to learn about LMAX.

From Martin Fowler's web site about the idea:

LMAX is a new retail financial trading platform. As a result it has to process many trades with low latency. The system is built on the JVM platform and centers on a Business Logic Processor that can handle 6 million orders per second on a single thread. The Business Logic Processor runs entirely in-memory using event sourcing. The Business Logic Processor is surrounded by Disruptors - a concurrency component that implements a network of queues that operate without needing locks. During the design process the team concluded that recent directions in high-performance concurrency models using queues are fundamentally at odds with modern CPU design.

65 questions
2
votes
1 answer

Pause the processing inside lmax disruptor?

I would like to do a performance test using Lmax Disruptor: Configure dusruptor Somehow "pause" the processing Add many messages to RingBuffer "Unpause" the processing This way I could measure cleanly how fast buffer gets empty. If I "mix" adding…
onkami
  • 8,791
  • 17
  • 90
  • 176
2
votes
1 answer

Will LMAX Disruptor work on Android?

Anyone had any experience with running LMAX Disruptor on Android? Will it work and are there any compatibility issues?
vbkn
  • 108
  • 9
2
votes
1 answer

LMAX Disruptor Timeout for the EventHandler onEvent

I have a ring buffer and an event handler. This is used as an inbound buffer of a messaging server. Inside my even handler, it does some AMQP service invocations and some times due to that call waits without a timeout(bug in the underline protocol…
Subash Chaturanga
  • 814
  • 2
  • 10
  • 20
2
votes
1 answer

reactor lmax thread dump

Trying to understand below (partial) stack trace. Using spring's project reactor 2.0.4. I got task scheduler threads that are supposed to create tasks and allocate tasks for worker threads. The application is hung at this point (worker threads not…
fitifiti
  • 97
  • 6
2
votes
1 answer

Null Pointer exception while using TimeoutBlockingWaitStrategy in disruptor

I was working with the workerpool example and was trying different WaitStrategies. When i try the TimeoutBlockingWaitStrategy, i am getting error. Here's the program and the call stack. package org.lmax.experiment.test; import…
Harry
  • 528
  • 1
  • 5
  • 21
2
votes
2 answers

Why doesn't my program stop even when i call disruptor.shutdown

i have been try to use the LMAX distruptor to buffer the content produced by one of my programs and publish them to another program as a batch of records (well i am still unable to get the consumer batching part done). But even without using the…
udani
  • 1,243
  • 2
  • 11
  • 33
2
votes
0 answers

Usage of executor service in Lmax Disruptor

I am evaluating the Disruptor library for a data processing application platform. Specifically I would evaluate against Akka actor framework and plain Java executor service, fitting to our problem domain. For instantiating a new Disruptor (queue,…
sutanu dalui
  • 663
  • 7
  • 25
2
votes
2 answers

Getting the current number of messages in the ring buffer

I am using Spring's Reactor pattern in my web application. Internally it uses LMAX's RingBuffer implementation as one of it's message queues. I was wondering if there's any way to find out the current RingBuffer occupancy dynamically. It would help…
mahasamatman
  • 603
  • 1
  • 7
  • 10
2
votes
1 answer

In what way is LMAX's distruptor usable for a stock market?

I have done some research with the disruptor patern and there's one thing I can't wrap my head arround. There are the producers, which provide the entry's for the ring buffer. There is the ringbuffer, basically a fixed but endless array. There are…
user3014924
  • 153
  • 4
2
votes
0 answers

Disruptor performance on RHEL VM vrs RHEL installed on hardware?

It seems to me that this is an important question due to the increasing prevalence of "The Cloud" and for companies that use VM's for assorted needs. Specifically the question is: How do the Disruptor libraries perform on a RHEL virtual machine…
user447607
  • 5,149
  • 13
  • 33
  • 55
2
votes
1 answer

Using multiple LMAX Disruptor

I am new to the LMAX Disruptor, which I am exploring to use it in an multilayered asynchronous project that need to process huge traffic flow. A request is delivered to the platform to send an SMS, the request is cleaned/checked for simple errors…
vvra
  • 2,832
  • 5
  • 38
  • 82
2
votes
2 answers

Disruptor - Are the Consumers Multithreaded?

I have following questions regarding the disruptor: The consumers (event processors) are not implementing any of the Callable or Runnable interfaces they implement EventHandler, Then how can they run in parallel, so for example I have a disruptor…
NiksP
  • 69
  • 1
  • 9
2
votes
1 answer

How does the LMAX Disruptor address typical message broker problems?

My understanding of the LMAX Disruptor is that it is a JAR full of scary-fast, scary-concurrent Java code that allows a throughput of 20 million messages per second (if used correctly). We currently have an ActiveMQ instance that is slow for what we…
IAmYourFaja
  • 55,468
  • 181
  • 466
  • 756
1
vote
0 answers

Aeron cluster nodes failed to join and throw timeout exception

We have an Aeron cluster with three nodes, after starting the cluster two of the nodes throw the following error on startup. Because we take a snapshot from states, they should load the snapshot first. Consensus…
1
vote
1 answer

How is LMAX Disruptor garbage collector friendly

I am trying to understand how lmax disruptor is GC friendly. I see that the event objects on the ring are re-used, however, the "data" that is "set" on these objects are on the heap so it feels like the garbage collection benefit is limited to 1…
vrtx54234
  • 2,196
  • 3
  • 30
  • 53