Primer - A distributed and persistent Message Queue System for Erlang Applications

Benoît Chesneau
A web craftsman

Many message queues systems and platforms exists around providing API that you can bind in you Erlang Applications. You have rabbitmq built in Erlang. But we have no scalable systems that you can completely embed in your Erlang applications. Primer is a new system primarily distributed as an Erlang OTP application. Like MNESIA but a message oriented system. Primer is an AP system written in Erlang that distribute messages between Erlang nodes allowing different scenarios from many producers and consumers with many queue to producers and consumers focusing on a single queue that may be distributed between Erlang nodes. PUSH and PULL consuming scenarios are also handled. Primer has no broker, each nodes can accept and send messages. Primer queues can also be consumed by external applications over different protocols thanks to the primer apps. Primer is used in different projects and will be opensourced in April 2015.

Talk objectives:

This talk will describe the features of primer and how we built a completely new message queue system in Erlang: the design choices made to make it scalable and the Erlang patterns we use.

Target audience:

Beginners and confirmed developers interested in micro-services architectures and the design of AP systems in Erlang.


Benoît Chesneau is a software craftsman, living near Paris. He has years of experience in building small and big-scale database backend websites. He is the founder of a company building innovative web services and open-source applications. Benoît Chesneau is also the founder of the Refuge and Barrel projects, the author of Gunicorn and multiple other opensource projects in Python and Erlang.

GitHub: benoitc

Twitter: @benoitc

Back to conference page