RabbitMQ for admins and developers - course RUB 35,000. from Slurm, training, Date: November 28, 2023.
Miscellaneous / / November 28, 2023
Watch the theory video
You will have 7 video lessons in high quality. Lessons open as scheduled. You dive into each topic in a structured manner and go through the material at your own pace. You have access to lectures for 2 years.
Do practical tasks in your personal account
In addition to theoretical materials, you will find tests and practical assignments. They will help you better remember new information and improve the skills that are necessary for real work with RabbitMQ.
Author and speaker of the course, IT director at Khlebnitsa, one of the admins of the RabbitMQ ru-community
About the course
Course speaker
Message Brokers
You will learn what a broker is and what place it occupies in the infrastructure. And also learn how to install the necessary components.
Theory: General information about what message brokers are
RabbitMQ's place in the infrastructure
Fundamental differences between RabbitMQ and Apache kafka
Hands-on toolkit (docker, docker-compose)
Practice:
Docker installation
Test on the topic
Terminology, basic entities of RabbitMQ
You will understand the terminology of each entity and be able to apply them in communication and when reading documentation.
Theory: All basic entities and their connections (Message, Queue, Exchange, Binding, Publisher, Consumer)
Where can I read the documentation?
Practice:
Test on the topic
First steps with RabbitMQ
You will learn how to launch and configure a service in docker, learn the basic commands and management capabilities through the web interface.
Theory: Running a service in docker
Required parameters
States - saving persistent data
Web interface features
Console Features
Practice:
Running in docker
Creating a Queue
Create a message
Reading a message
Test on the topic
Typical Use
You will understand for what typical tasks the service can (and should) be used, learn the nuances of setting up each entity and learn how to create standard processing pipelines.
Theory: Typical usage patterns (cases)
Consumer settings (prefetch_count, autoack, heartbeat)
Types and differences of exchanges, routing patterns
Retry Queues (DLX
Practice:
Setting up test Publish
Setting up a test Consumer
Setting up a retry queue through the DLX mechanism
Test on the topic
High Availability, High Load
You will learn about the service's capabilities in terms of load balancing and fault tolerance. Learn how to configure a failover cluster and be aware of the nuances of using a cluster.
Theory: Load Balancing
Clustering
Quorum Queues
Shovel/Federation
Clustering pitfalls
Practice
Setting up a load balancer (haproxy)
Setting up a cluster of 3 nodes
Checking Cluster Failover
Setting up shovels (dynamic and static)
Test on the topic
Monitoring
You will learn how to set up monitoring, which metrics are useful in which situations, and how to react to them. Learn to set up monitoring with notifications in Telegram through the Prometheus-Graphane bundle.
Theory: Logging - levels, fortune telling using logs
Built-in, external exporter to Prometheus
Alerting thresholds
Useful metrics
Practice:
Exporter setup
Setting up the telegraf+prometeus+grafana stack
Setting up notifications
Test on the topic
Additional features of RabbitMQ
You will learn about more specific cases of using Rabbit, about the nuances of configuring queues through policies.
Theory: Unobvious uses of Dead Letter Exchange (DLX)
Policy - pros, cons, pitfalls
TTL messages - why it's a bad idea
Plugins
Answers to difficult questions from the first AMA session
Practice:
Setting up a multi-level retry queue
Test on the topic