Home Page Icon
Home Page
Table of Contents for
Learning RabbitMQ
Close
Learning RabbitMQ
by Martin Toshev
Learning RabbitMQ
Learning RabbitMQ
Table of Contents
Learning RabbitMQ
Credits
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers, and more
Why subscribe?
Free access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
1. Introducing RabbitMQ
Enterprise messaging
Use cases
Solutions
Patterns
Point-to-point
Publish-subscribe
Request-response
Understanding RabbitMQ
Features
Comparison with other technologies
Installation
Linux
Case study: CSN (Corporate Social Network)
Summary
Exercises
2. Design Patterns with RabbitMQ
Messaging patterns in RabbitMQ
Point-to-point communication
Publish-subscribe communication
Request-reply communication
Message router
Case study: Initial design of the CSN
Summary
Exercises
3. Administration, Configuration, and Management
Administering RabbitMQ instances
Administering RabbitMQ components
Administering users
Administering vhosts
Administering permissions
Administering exchanges
Administering queues
Administering bindings
Administering policies
Administering the RabbitMQ database
Full backup and restore
Backing up and restoring the broker metadata
Installing RabbitMQ plugins
Configuring RabbitMQ instances
Setting environment variables
Modifying the RabbitMQ configuration file
Managing RabbitMQ instances
Upgrading RabbitMQ
Case study: Administering CSN
Summary
Exercises
4. Clustering
Benefits of clustering
RabbitMQ clustering support
Creating a simple cluster
Adding nodes to the cluster
Adding RAM-only nodes to the cluster
Removing nodes from a cluster
Connecting to the cluster
Case study: scaling the CSN
Summary
Exercises
5. High Availability
Benefits of high availability
High availability support in RabbitMQ
Mirrored queues
Federation plugin
Shovel plugin
Reliable delivery
AMQP transactions
Publisher confirms
Client high availability
Client reconnections
Load balancing
Case study: introducing high availability in CSN
Summary
Exercises
6. Integrations
Types of integrations
Spring framework
Spring AMQP
Spring Integration
Integration with ESBs
Mule ESB
WSO2
Integration with databases
Oracle RDBMS
MongoDB
Hadoop
RabbitMQ integrations
RabbitMQ deployment options
Puppet
Docker
Vagrant
Testing RabbitMQ applications
Unit testing of RabbitMQ applications
Integration testing of RabbitMQ applications
Case study: Integrating CSN with external systems
Summary
Exercises
7. Performance Tuning and Monitoring
Performance tuning of RabbitMQ instances
Memory usage
Faster runtime execution
Message size
The maximum frame size of messages
The maximum number of channels
Connection heartbeats
Clustering and high availability
QoS prefetching
Message persistence
Mnesia transaction logs
Acknowledgements, transactions and publisher confirms
Message routing
Queue creation/deletion
Queue message TTL
Alarms
Network tuning
Client tuning
Performance testing
Monitoring of RabbitMQ instances
The management UI
Nagios
Monit
Munin
Comparing RabbitMQ with other message brokers
Case Study : Performance tuning and monitoring of RabbitMQ instances in CSN
Summary
Exercises
8. Troubleshooting
General troubleshooting approach
Checking the status of a particular node
Inspecting the RabbitMQ logs
The RabbitMQ mailing list and IRC channel
Erlang troubleshooting
An Erlang Primer
The Erlang crash dump
Problems with starting/stopping RabbitMQ nodes
Problems with message delivery
Summary
Exercises
9. Security
Types of threats
Authentication
Configuring the LDAP backend
Security considerations
Authorization
LDAP authentication
Secure communication
Secure communication with the management interface
Secure cluster communication
EXTERNAL SSL authentication
Penetration testing
Case study – securing CSN
Summary
Exercises
10. Internals
High level architecture of RabbitMQ
Overview of RabbitMQ components
Boot component
Plug-in loader component
Recovery component
Persistence component
Metadata persistence
Message persistence component
Networking component
Other components
Developing plug-ins for RabbitMQ
Case Study: Developing a RabbitMQ plugin for CSN
Summary
Exercises
A. Contributing to RabbitMQ
RabbitMQ community
RabbitMQ repositories
Getting the sources
Building the RabbitMQ server
Points for contribution
Index
Search in book...
Toggle Font Controls
Playlists
Add To
Create new playlist
Name your new playlist
Playlist description (optional)
Cancel
Create playlist
Sign In
Email address
Password
Forgot Password?
Create account
Login
or
Continue with Facebook
Continue with Google
Sign Up
Full Name
Email address
Confirm Email Address
Password
Login
Create account
or
Continue with Facebook
Continue with Google
Prev
Previous Chapter
Table of Contents
Next
Next Chapter
Learning RabbitMQ
Learning RabbitMQ
Add Highlight
No Comment
..................Content has been hidden....................
You can't read the all page of ebook, please click
here
login for view all page.
Day Mode
Cloud Mode
Night Mode
Reset