Master the art of developing message-based applications with RabbitMQ
About This Book
- Learn how to administer, manage, and extend your own message broker, RabbitMQ
- Develop clients to make a message bridge between your software systems using RabbitMQ
- Discover how to achieve proficiency with RabbitMQ with the well-defined descriptions of the topics
Who This Book Is For
If you are an intermediate-level RabbitMQ developer, who wants to achieve professional-level expertise in the subject, this book is for you. You'll also need to have a decent understanding of message queuing.
What You Will Learn
- Administer RabbitMQ using different tools
- Understand the roots and details of messaging, message brokers, and AMQP protocol
- Scale the RabbitMQ server using the clusters and high availability techniques
- Extend RabbitMQ by developing the Erlang OTP-based applications that use the RabbitMQ API
- Manage the RabbitMQ server using its powerful tools
- Monitor the RabbitMQ Server using different open source tools such as Nagios, Munin, and Zabbix
- Ensure your RabbitMQ's security using SSL, SASL, and access control
- Develop RabbitMQ clients using Java, Python, and C# with an industry example
RabbitMQ is one of the most powerful Open Source message broker software, which is widely used in tech companies such as Mozilla, VMware, Google, AT&T, and so on. RabbitMQ gives you lots of fantastic and easy-to-manage functionalities to control and manage the messaging facility with lots of community support. As scalability is one of our major modern problems, messaging with RabbitMQ is the main part of the solution to this problem.
This book explains and demonstrates the RabbitMQ server in a detailed way. It provides you with lots of real-world examples and advanced solutions to tackle the scalability issues.
You'll begin your journey with the installation and configuration of the RabbitMQ server, while also being given specific details pertaining to the subject. Next, you'll study the major problems that our server faces, including scalability and high availability, and try to get the solutions for both of these issues by using the RabbitMQ mechanisms. Following on from this, you'll get to design and develop your own plugins using the Erlang language and RabbitMQ's internal API. This knowledge will help you to start with the management and monitoring of the messages, tools, and applications. You'll also gain an understanding of the security and integrity of the messaging facilities that RabbitMQ provides. In the last few chapters, you will build and keep track of your clients (senders and receivers) using Java, Python, and C#.
Style and approach
An easy-to-follow guide, full of hands-on examples based around managing, monitoring, extending, and securing RabbitMQ and its internal tools. You will learn how to develop your own clients using Java, Python, and C#.
Table of Contents
Chapter 1: Getting Started
Chapter 2: Configuring RabbitMQ
Chapter 3: Architecture and Messaging
Chapter 4: Clustering and High Availability
Chapter 5: Plugins and Plugin Development
Chapter 6: Managing Your RabbitMQ Server
Chapter 7: Monitoring
Chapter 8: Security in RabbitMQ
Chapter 9: Java RabbitMQ Client Programming
Chapter 10: Ruby Client Programming
Chapter 11: Python Client Programming