About RabbitMQ
With more than 35,000 production deployments of RabbitMQ world-wide at small startups and large enterprises, RabbitMQ is the most popular open source message broker.
RabbitMQ is an open-source message-broker software that originally implemented the Advanced Message Queuing Protocol and has since been extended with a plug-in architecture to support Streaming Text Oriented Messaging Protocol, Message Queuing Telemetry Transport, and other protocols.

Course Contents
The following are the course contents offered for RabbitMQ
- Enterprise messaging
- Understanding RabbitMQ
- Message brokers and message queue
- An introduction to the advanced message queue protocol
- Starting RabbitMQ
- Features
- Comparison with other technologies
- Installation
- Installation of RabbitMQ
- Windows
- Ubuntu
- Amazon elastic compute cloud (EC2)
- Case study: CSN (Corporate Social Network)
- Exercises
- Messaging patterns in RabbitMQ
- Point-to-point communication
- Publish-subscribe communication
- Request-reply communication
- Message router
- Case study: Initial design of the CSN
- Exercises
- 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
- Managing RabbitMQ instances
- Upgrading RabbitMQ
- Exercises
- 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
- Benefits of high availability
- High availability support in RabbitMQ
- Mirrored queues
- Federation plugin
- Shovel plugin
- Reliable delivery
- Client high availability
- Case study: introducing high availability in CSN
- High reliability in RabbitMQ
- Federation in RabbitMQ
- Clustering in RabbitMQ
- Creating clusters
- Checking the cluster status
- Changing the cluster node types
- Updating cluster nodes
- Clustering the settings of RabbitMQ
- Load balancing for high availability of queues
- Cross Cluster Replication
- Case study: scaling the CSN
- Overall configuration of RabbitMQ
- The RabbitMQ environment variables
- The configuration file
- Runtime parameters
- Messaging and its use cases
- Enterprise messaging
- Messaging-related software architectures
- Messaging concepts
- Advanced Message Queuing Protocol (AMQP)
- AMQ elements
- Functional specifications of AMQP
- Plugin management and default plugins
- Plugin configuration
- Custom plugin development
- Basics of Erlang
- Variables and expressions
- Tuples and lists
- Functions and modules
- Conditionals
- Looping in Erlang
- Concurrent programming
- Simple RabbitMQ metronome plugin
- Management via a command line
- Management via a web plugin
- Management via a REST API
- RabbitMQ command-line tools
- Web plugins
- Nagios
- Munin
- Zabbix
- An brief introduction to security in RabbitMQ
- Applying access control
- Providing SASL authentication
- SSL support in RabbitMQ
- Case study
- Application language – Java
- RabbitMQ Java client API
- Client package in detail
- Connection
- Channel
- Exchanges
- Queues
- Publishing messages
- Consuming messages
- Other RabbitMQ Clients
- Backing Up and Restore Strategies
- How is RabbitMQ different from other AMQP solutions?
- What are the other competing solutions?
- Where does Apache Kafka excel over?
Have Question?





