InfluxDB Platform is powered by columnar analytics, optimized for cost-efficient storage, and built with open data standards. Learn more →
Disruptor Alternatives
Similar projects and alternatives to Disruptor
-
-
InfluxDB
Purpose built for real-time analytics at any scale. InfluxDB Platform is powered by columnar analytics, optimized for cost-efficient storage, and built with open data standards.
-
-
-
-
-
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
picocli
Picocli is a modern framework for building powerful, user-friendly, GraalVM-enabled command line apps with ease. It supports colors, autocompletion, subcommands, and more. In 1 source file so apps can include as source & avoid adding a dependency. Written in Java, usable from Groovy, Kotlin, Scala, etc.
-
-
-
-
-
-
-
-
fastutil
fastutil extends the Java™ Collections Framework by providing type-specific maps, sets, lists and queues.
-
-
-
Eclipse Collections
Eclipse Collections is a collections framework for Java with optimized data structures and a rich, functional and fluent API.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Disruptor discussion
Disruptor reviews and mentions
-
The LMAX Architecture (2011)
LMAX have an open source version of the disruptor in GitHub https://github.com/LMAX-Exchange/disruptor
-
Disruptor-rs: better latency and throughput than crossbeam
I played around with the original (Java) LMAX disruptor which was an interesting and different way to achieve latency/throughput. Here's some info on it[0] and a referenced Martin Fowler post[1].
[0] https://github.com/LMAX-Exchange/disruptor/wiki/Blogs-And-Ar...
[1] https://martinfowler.com/articles/lmax.html
- LMAX Disruptor – low latency inter-thread messaging for Java
-
Lightning Fast Multicast Ring Buffer
Nice. The per element atomic locks rather than per collection is a neat optimization I wouldn't have thought of! After a decade+ of LMax Disruptor being a well publicized multicast circular queue. https://lmax-exchange.github.io/disruptor/
-
Gnet is the fastest networking framework in Go
https://lmax-exchange.github.io/disruptor/#_what_is_the_disr.... Unfortunately IIUC writing this in Go still prevents the spin-locked acceptor thread from achieving the kind of performance you could get in a non-GC language, unless you chose to disable GC, so I'd guess Envoy is still faster.
https://gnet.host/docs/quickstart/ it's nice that you can use this simply though. Envoy is kind of tricky to setup with custom filters, so most of the time it's just a standalone binary.
[0] https://blog.envoyproxy.io/envoy-threading-model-a8d44b92231...
[1] https://lmax-exchange.github.io/disruptor/#_what_is_the_disr...
-
A lock-free ring-buffer with contiguous reservations (2019)
See also the Java LMAX Disruptor https://github.com/LMAX-Exchange/disruptor
I've built a similar lock-free ring buffer in C++11 https://github.com/posterior/loom/blob/master/doc/adapting.m...
-
JEP Draft: Deprecate Memory-Access Methods in Sun.misc.Unsafe for Removal
"Why we chose Java for our High-Frequency Trading application"
https://medium.com/@jadsarmo/why-we-chose-java-for-our-high-...
LMAX Disruptor customers
https://lmax-exchange.github.io/disruptor/
Among many other examples.
-
LMAX Disruptor – High Performance Inter-Thread Messaging Library
Current documentation
https://lmax-exchange.github.io/disruptor/
-
Progress on No-GIL CPython
LMAX Disruptor has on their wiki that average latency to send a message from one thread to another at 53 nanoseconds. For comparison a mutex is like 25 nanoseconds and more if Contended but a mutex is point to point synchronization.
The great thing about it is that multiple threads can receive the same message without much more effort.
https://github.com/LMAX-Exchange/disruptor/wiki/Performance-...
https://gist.github.com/rmacy/2879257
I am dreaming of language that is similar to Smalltalk that stays single threaded until it makes sense to parallise.
I am looking for problems to parallelism that are not big data. Parallelism is like adding more cars to the road rather than increasing the speed of the car. But what does a desktop or mobile user need to do locally that could take advantage of the mathematical power of a computer? I'm still searching.
-
A note from our sponsor - InfluxDB
www.influxdata.com | 7 Sep 2024
Stats
LMAX-Exchange/disruptor is an open source project licensed under Apache License 2.0 which is an OSI approved license.
The primary programming language of Disruptor is Java.