Apache Storm, Disruptor, JCTools and Linearizability

Apache Storm, Disruptor, JCTools and Linearizability

A conversation with Francesco Nigro about high scalability and JCTools
1 Stunde 6 Minuten
Podcast
Podcaster
Java, Serverless, Clouds, Architecture and Web conversations with Adam Bien

Beschreibung

vor 9 Monaten
An airhacks.fm conversation with Francesco Nigro (@forked_franz)
about: JCTools as a Java concurrency utility library created by
Nitsan Wakart, the history of JCTools and how Cliff Click donated
his non-blocking HashMap algorithm to the project, contributions to
JCTools including weight-free queue implementations, Apache Storm
vs. Apache Kafka, explanation of how JCTools improves upon Java's
standard concurrent queues by reducing garbage creation and
optimizing memory layout, the difference between linked node
implementations in standard Java collections versus array-based
implementations in JCTools, detailed explanation of linearizability
as a property of concurrent algorithms, the challenges of
implementing concurrent data structures that maintain proper
ordering guarantees, explanation of lock-free versus wait-free
algorithms and their progress guarantees, discussion of the xadd
instruction in x86 processors and how it's used in JCTools for
atomic operations, the implementation of MessagePassingQueue API in
JCTools that provides relaxed guarantees for better performance,
comparison between JCTools and other solutions like Disruptor,
explanation of how JCTools achieves 400 million operations per
second in single-producer single-consumer scenarios, discussion of
cooperative algorithms for multi-producer scenarios, the use of
padding to avoid false sharing in concurrent data structures, the
implementation of code generation in JCTools to create different
flavors of queues, the use of Unsafe and AtomicLongFieldUpdater for
low-level operations, real-world applications in high-frequency
trading and medical data processing, integration of JCTools with
quarkus and mutiny frameworks, the importance of proper memory
layout for performance

Francesco Nigro on twitter: @forked_franz

Weitere Episoden

Not Your Java Package Handler
1 Stunde 12 Minuten
vor 7 Monaten
From Punch Cards (and Tapes) to Java
1 Stunde 6 Minuten
vor 7 Monaten
Injection Without Reflection
57 Minuten
vor 8 Monaten
About Amazon Corretto
1 Stunde 5 Minuten
vor 8 Monaten

Kommentare (0)

Lade Inhalte...

Abonnenten

15
15