VMware Tanzu RabbitMQ: Install, Configure, Manage

Classroom Schedule
Live Online Schedule
vFlex-ILT Schedule
Inquire about Onsite
Course Datasheet
- Formats: Classroom, Live Online, vFlex-ILT, Onsite
- Length: 3 Days
This intensive 3-day, instructor-led course in RabbitMQ provides a deep dive into how to install, configure, and develop applications which leverage RabbitMQ messaging. The course begins with RabbitMQ installation and general configuration. It continues with developing messaging applications using the Java APIs, and delves into more advanced topics including clustering, high availability, performance, and security. Modules are accompanied by lab exercises that provide hands-on experience.

Objectives:    By the end of the course, you should be able to meet the following objectives:
•  Install and configure RabbitMQ
•  Activate and use plugins such as the web management console
•  Implement messaging patterns and applications using the Java client
•  Set up a cluster of RabbitMQ nodes
•  Configure high availability appropriately
•  Tune and optimize RabbitMQ for better performance
•  Secure RabbitMQ
Intended Audience:    •  Developers
•  Architects
•  Administrators
Prerequisites:    Knowledge on Core Java or any enterprise programming language
Outline:    1  Introduction to Messaging and AMQP
•  Benefits of messaging and asynchronous systems
•  Why JMS isn’t enough
•  Introduction to AMQP
•  RabbitMQ case studies

2  RabbitMQ Installation
•  Product description and main capabilities
•  Installation, directory structure, and configuration
•  Durability with the Mnesia database
•  Basic administration
•  Web management console
•  Multitenancy with virtual hosts
•  Logging with the firehose tracer

3  Development and Integration
•  Clients (Java, C#, Python, Ruby, etc.)
•  Focus on the Java client
•  Publishing and consuming messages
•  Managing AMQP resources
•  AMQP routing with exchanges and queues
•  Higher level abstractions (Spring AMQP & Integration, Pika)
•  Messaging patterns

4  Reliable Messaging Development
•  Durable queues and exchanges
•  Persistent messages
•  AMQP and JMS transactions
•  AMQP acknowledgments
•  Dead lettering
•  Multiple transactional resources

5  Clustering
•  Scalable messaging architecture through clustering
•  Creating a cluster
•  Disk vs. RAM nodes
•  Administration of a cluster
•  Network partitions

6  High Availability
•  Cluster node failures and consequences
•  Mirrored queues
•  Slave synchronization
•  Client failover handling

7  Plugins  
•  RabbitMQ plugins introduction
•  LDAP authentication
•  Shovel
•  Federation
•  Shovel vs federation

8  Performance
•  Impacts of configuration and client code options on performance
•  Flow control
•  Best practices

9  Security
•  Virtual hosts, users, and access control
•  Authentication
•  Secured communication

10  Operations and Monitoring
•  Disk, firewall, heartbeat tuning
•  Monitoring
•  Management API
•  Support for third-party monitoring tools

11  Spring AMQP (Optional)
•  Introduction to Spring
•  Spring AMQP overview
•  Spring’s AMQP template
•  Configuring AMQP Resources using Spring
•  Sending and receiving messages