RabbitMQ Cookbook

More Information
Learn
  • Produce and consume AQMP messages using the fire-and-forget messaging model
  • Optimize messaging applications using RabbitMQ extensions
  • Learn how to configure RabbitMQ parameters, enable RabbitMQ plugins, and monitor RabbitMQ activities
  • Integrate with other protocols such as MQTT, STOMP, and JSON
  • Develop Web applications with RabbitMQ as a service bus
  • Create a scalable and robust application using RabbitMQ clustering
  • Create a highly available RabbitMQ cluster using RabbitMQ HA policies
  • Create a geographic RabbitMQ cluster using the federation and shovel plugins
  • Create and auto-scale a RabbitMQ cluster on Amazon Web Services
  • Deploy and use RabbitMQ on Cloud-Foundry
  • Create custom RabbitMQ plugins in Erlang
About

RabbitMQ is an open source message broker software (sometimes called message-oriented middleware) that implements the Advanced Message Queuing Protocol (AMQP). The RabbitMQ server is written in the Erlang programming language and is built on the Open Telecom Platform framework for clustering and failover. Messaging enables software applications to connect and scale. Applications can connect to each other as components of a larger application or to user devices and data.

RabbitMQ Cookbook touches on all the aspects of RabbitMQ messaging. You will learn how to use this enabling technology for the solution of highly scalable problems dictated by the dynamic requirements of Web and mobile architectures, based for example on cloud computing platforms. This is a practical guide with several examples that will help you to understand the usefulness and the power of RabbitMQ.

This book helps you learn the basic functionalities of RabbitMQ with simple examples which describe the use of RabbitMQ client APIs and how a RabbitMQ server works. You will find examples of RabbitMQ deployed in real-life use-cases, where its functionalities will be exploited combined with other technologies. This book helps you understand the advanced features of RabbitMQ that are useful for even the most demanding programmer. Over the course of the book, you will learn about the usage of basic AMQP functionalities and use RabbitMQ to let decoupled applications exchange messages as per enterprise integration applications. The same building blocks are used to implement the architecture of highly scalable applications like today's social networks, and they are presented in the book with some examples. You will also learn how to extend RabbitMQ functionalities by implementing Erlang plugins.

This book combines information with detailed examples coupled with screenshots and diagrams to help you create a messaging application with ease.

Features
  • Create scalable distributed applications with RabbitMQ
  • Exploit RabbitMQ on both Web and mobile platforms
  • Deploy message services on cloud computing platforms
  • Full of screenshots and descriptions with clear, step-by-step instructions and practical examples
Page Count 288
Course Length 8 hours 38 minutes
ISBN 9781849516501
Date Of Publication 24 Dec 2013

Authors

Gabriele Santomaggio

Gabriele Santomaggio has worked in the IT industry for more than 15 years. He is a developer, and very keen on middleware and distributed applications. Currently, he is working on high-performance Java applications.

He is the member of a big IT Italian community (www.indigenidigitali.com/) where he has published some posts about Amazon Web Services and message-oriented middleware (http://blog.indigenidigitali.com/tag/gabriele-santomaggio/).

He likes running and listening to jazz music.

Sigismondo Boschi

Sigismondo Boschi is a software developer currently involved in projects of messaging and networking distributed applications.

Prior to this, he has had more than 10 years' experience working with distributed applications and message-passing paradigms. He first acquired a PhD in Computational Physical Chemistry from the University of Bologna, and then has worked in the Development of Scientific High Performance Computing Projects.