57 lines
2.0 KiB
Markdown
57 lines
2.0 KiB
Markdown
# Лабораторная работа №4 - Работа с брокером сообщений
|
||
|
||
## Задание
|
||
|
||
#### Цель:
|
||
|
||
Изучение проектирования приложений при помощи брокера сообщений.
|
||
|
||
#### Задачи:
|
||
|
||
* Установить брокер сообщений RabbitMQ.
|
||
* Пройти уроки 1, 2 и 3 из RabbitMQ Tutorials на любом языке программирования.
|
||
* Продемонстрировать работу брокера сообщений.
|
||
|
||
### Классы:
|
||
1. ```Publisher``` - класс, отвечающий за отправку сообщений
|
||
|
||
2. ```Consumer1``` - класс, отвечающий за принятие и обработку сообщений за задержкой 3 секунды
|
||
|
||
2. ```Consumer2``` - класс, отвечающий за принятие и обработку сообщений без задержек
|
||
|
||
#### Ход работы:
|
||
|
||
На компьютер был установлен брокер сообщений ```RabbitMQ```, после чего все три класса программы были одновременно запущены.
|
||
|
||
## Работа программы:
|
||
|
||
Класс ```Publisher``` успешно осуществляет отправку сообщений своим клиентам.
|
||
|
||
![](Publisher.png "")
|
||
|
||
Класс ```Consumer1``` осуществляет принятие и обработку сообщений с задержкой в 3 секунды, это можно заметить на видео.
|
||
|
||
![](Consumer1.png "")
|
||
|
||
Класс ```Consumer2``` мгновенно осуществляет принятие и обработку сообщений.
|
||
|
||
![](Consumer2.png "")
|
||
|
||
## Работа с RabbitMQ Management UI
|
||
|
||
![](overview.png "")
|
||
|
||
### Очередь ```Consumer1```
|
||
|
||
![](qConsumer1.png "")
|
||
|
||
### Очередь ```Consumer2```
|
||
|
||
![](qConsumer2.png "")
|
||
|
||
### Exchange
|
||
|
||
![](ex.png "")
|
||
|
||
# Youtube
|
||
https://youtu.be/dw7j0WgDmS8 |