Karl Nilsson

Karl wrestles distributed rabbits for a living

Karl comes from a .NET background (C# / F#) where he worked mostly on distributed systems. He is an avid proponent of functional programming. He now works for Pivotal on the RabbitMQ messaging broker.

Past Activities

Karl Nilsson
Code BEAM STO 2019
17 May 2019
13.40 - 14.25

Make a distributed toolbox with Ra

Ra is an implementation of the Raft consensus protocol by Team RabbitMQ. In RabbitMQ, Ra is used to implement a consistent replicated queue but that isn't all that Ra can be used for. This talks will be a practical session on how to implement consistent distributed system essentials, such as replicating a key-value stores, leader election processes, lock servers and other coordination services on top of the Ra library.


Share knowledge of the Ra library and how to achieve common distributed system patterns using it.


People who write distributed systems and are interested in strong consistency and the trade-offs involved in writing and maintaining such systems.