DAS_2023_1/martysheva_tamara_lab_4
2023-12-17 01:31:56 +04:00
..
client martysheva_tamara_lab_4 is ready 2023-12-17 01:31:56 +04:00
images martysheva_tamara_lab_4 is ready 2023-12-17 01:31:56 +04:00
README.md martysheva_tamara_lab_4 is ready 2023-12-17 01:31:56 +04:00
video.mkv martysheva_tamara_lab_4 is ready 2023-12-17 01:31:56 +04:00

Лабораторная работа №4 - Работа с брокером сообщений

Цель: изучение проектирования приложений при помощи брокера сообщений.

Задачи:

  • Установить брокер сообщений RabbitMQ.
  • Пройти уроки 1, 2 и 3 из RabbitMQ Tutorials на любом языке программирования.
  • Продемонстрировать работу брокера сообщений.

Ход работы:

RabbitMQ:

В DockerHub ищем и пуллим образ RabbitMQ, далее запускаем его:

Указываем имя для контейнера и проброс необходимых портов:

Работа брокера

Publisher

Программа, которая создаёт один exchange с типом fanout. Программа должна раз в секунду генерировать сообщения в журнал событий согласно вашей предметной области. Например, событие "пришёл заказ" или "сообщение от пользователя" или "необходимо создать отчёт".

Отправляет пользователям сообщения о том, что необходимо начать тренировку:

Consumer1 - с обработкой

Consumer 1. Программа, которая создаёт под себя отдельную не анонимную (!) очередь (queue) (то есть имя queue НЕ пустая строка), создаёт binding на exchange и начинает принимать сообщения (consume). Программа должна обрабатывать сообщения 2-3 секунды.

Consumer2 - без обработки

Consumer 2. Аналогично Consumer 1, только сообщения необходимо обрабатывать моментально. Только имя очереди должно отличаться от Consumer 1.

Отчеты