QCon is a practitioner-driven conference designed for technical team leads, architects, and project managers who influence software innovation in their teams.

Mike Hadlow, Author of WsdlWorks & Suteki Shop

Mike Hadlow

Biography: Mike Hadlow

Mike Hadlow works as a freelance .NET developer and architect. For the last few years he's been especially interested in messaging systems and service oriented architectures. He writes a blog, 'Code Rant', and is the author of several open source projects including Suteki Shop, an eCommerce framework, and EasyNetQ, a simple API for RabbitMQ. He lives in Lewes on the south coast of the UK.

Presentation: RabbitMQ and .NET with EasyNetQ

Track: The Modern Web Stack / Time: Friday 11:30 - 12:20 / Location: Churchill Auditorium

RabbitMQ provides a robust broker based messaging infrastructure that's already a very popular choice for building scalable architectures. It implements the Advanced Message Queueing Protocol (AMQP), which provides flexible routing, and is based on the Erlang Open Telecom Platform (OTP), a reliable, fault tollerant platform with clustering support.

Building .NET applications to leverage RabbitMQ has a number of challenges. We created EasyNetQ to do the client-side heavy lifting - allowing an application developer to get started with RabbitMQ with just a few lines of code.

In this talk I'll be explaining why RabbitMQ makes a complelling solution for building scalable systems. I'll give a brief overview of its exchange-binding-queue routing topology and show how you can build common messaging patterns with it. I'll also show how it provides work sharing out of the box.

I'll also be introducing EasyNetQ, a simple client API for RabbitMQ. I'll explain some of the challenges of writing client applications based on the low level AMQP API and how EasyNetQ helps with these. We'll see a demo of a distributed EasyNetQ based system surviving broker and network loss, and see how simple it is to add new workers to a work sharing system.

Finally I'll show a simple web chat application to demonstrate how RabbitMQ and EasyNetQ seamlessly fit in with modern web architectures.