Presentation: Cluster Consensus: When Aeron Met Raft
Share this on:
Abstract
Consensus protocols enable distributed systems to agree a common view of shared state. This common view allows a cluster to continue service while a majority of its members are available. Raft was designed to be understandable. Raft succeeded in this goal and became popular.
Aeron was designed to be an understandable messaging system, it was also designed to be fast, very fast. If the design principles of Aeron were applied to Raft, could we create a high-performance consensus implementation? Come to this talk if you would like to find out what happened when Aeron met Raft.
How you you describe the persona and level of the target audience?
Senior developers and architects who need highly resilient systems without compromising performance. Typically these developers will be from a finance, gaming, betting, or high-volume transactional system domains.
What do you want “that” persona to walk away from your talk knowing that they might not have known 50 minutes before?
An understanding of how consensus algorithms operate and the techniques that can be applied to make them efficient. Building a system on top of consensus algorithms requires very efficient interfacing to the algorithm and means to comprehend and monitor operation. We'll cover the mechanics of how this can work.
What trend in the next 12 months would you recommend an early adopter/early majority SWE to pay particular attention to?
With the event of CPU exploits like Meltdown and Spectre we are seeing more people take performance and efficiency as a first class concern, especially on cloud platforms. From this we'll likely see an increase in adoption of user-space network and storage access libraries. The challenge comes from how we design our software to best utilise these significant changes in infrastructure.
Similar Talks
Tracks
Monday, 5 March
-
Leading Edge Backend Languages
Code the future! How cutting-edge programming languages and their more-established forerunners can help solve today and tomorrow’s server-side technical problems.
-
Security: Red XOR Blue Team
Security from the defender's AND the attacker's point of view
-
Microservices/ Serverless: Patterns and Practices
Stories of success and failure building modern service and function-based applications, including event sourcing, reactive, decomposition, & more.
-
Stream Processing in the Modern Age
Compelling applications of stream processing & recent advances in the field
-
DevEx: The Next Evolution of DevOps
Removing friction from the developer experience.
-
Modern CS in the Real World
Applied trends in Computer Science that are likely to affect Software Engineers today.
-
Speaker AMAs (Ask Me Anything)
Tuesday, 6 March
-
Next Gen Banking: It’s not all Blockchains and ICOs
Great technologies like Blockchain, smartphones and biometrics must not be limited to just faster banking, but better banking.
-
Observability: Logging, Alerting and Tracing
Observability in modern large distributed computer systems
-
Building Great Engineering Cultures & Organizations
Stories of cultural change in organizations
-
Architectures You've Always Wondered About
Topics like next-gen architecture mixed with applied use cases found in today's large-scale systems, self-driving cars, network routing, scale, robotics, cloud deployments, and more.
-
The Practice & Frontiers of AI
Learn about machine learning in practice and on the horizon
-
JavaScript and Beyond: The Future of the Frontend
Exploring the great frontend frameworks that make JavaScript so popular and theg JavaScript-based languages revolutionising frontend development.
-
Speaker AMAs (Ask Me Anything)
Wednesday, 7 March
-
Distributed Stateful Systems
Architecting and leveraging NoSQL revisitied
-
Operating Systems: LinuxKit, Unikernels, & Beyond
Applied, practical, & real-world deep-dive into industry adoption of OS, containers and virtualisation, including Linux on Windows, LinuxKit, and Unikernels
-
Architecting for Failure
If you're not architecting for failure you're heading for failure
-
Evolving Java and the JVM: Mobile, Micro and Modular
Although the Java language is holding strong as a developer favourite, new languages and paradigms are being embraced on JVM.
-
Tech Ethics in Action
Learning from the experiences of real-world companies driving technology decisions from ethics as much as technology.
-
Bare Knuckle Performance
Killing latency and getting the most out of your hardware
-
Speaker AMAs (Ask Me Anything)