2024-12-23 19:27:47 +04:00
# Лабораторная работа №4 - Работа с брокером сообщений
## ПИбд-42 || Карамушко Максим
### Цель лабораторной работы
Изучение передачи сообщений между сервисами с помощью брокера RabbitMQ
### Описание задач 1-2:
В данной лабораторной был установлен RabbitMQ. После этого было пройдено 3 первых урока из RabbitMQ tutorials.
- Итоги первого урока:
![Урок 1 ](./results/lesson1.png )
- Итоги второго урока:
![Урок 2 ](./results/lesson2.png )
- Итоги третьего урока:
![Урок 3 ](./results/lesson3.png )
### Предметная область:
В качестве предметной области я выбрал магазин, в который приходят клиенты.
### Описание задачи 3:
Для демонстрации было были разработаны следующие сервисы:
Publisher: генерирующий сообщения
Consumer1: обрабатывающий сообщения с задержкой
Consumer2: обрабатывающий сообщения без задержки
- Данные по очереди second-client-queue, с одним запущенным экземпляром Consumer2:
![изображение 1 ](./results/second_queue.png )
- Данные по очереди first-client-queue, с одним запущенным экземпляром Consumer1:
![изображение 2 ](./results/1-consumers.png )
2024-12-23 19:30:44 +04:00
- Данные по очереди first-client-queue, с двумя запущенными экземплярами Consumer1:
2024-12-23 19:27:47 +04:00
![изображение 3 ](./results/2-consumers.png )
2024-12-23 19:30:44 +04:00
- Данные по очереди first-client-queue, с тремя запущенными экземплярами Consumer1:
2024-12-23 19:27:47 +04:00
![изображение 4 ](./results/3-consumers.png )
### Выводы:
По этим данным можно заметить, что вторая очередь вообще не заполняется, так как обрабатывает сообщения мгновенно.
Первая очередь с одним запущенным экземпляром Consumer1, заполняется быстро. По мере увеличения количества запускаемых экземпляров Consumer1 очередь заполняется все медленнее и при трех запущенных экземплярах очередь перестает расти.
### Видео с демонстрацией работы:
https://disk.yandex.ru/i/EEYPmrVKAczQlg