lw4 #2

Merged
Hlop4ik4 merged 112 commits from v.moiseev/distributed-computing:lw4 into main 2024-01-06 17:16:04 +04:00
Showing only changes of commit 2c9547985d - Show all commits

View File

@ -8,7 +8,7 @@
2. Пройти уроки 1, 2 и 3 из [RabbitMQ Tutorials](https://www.rabbitmq.com/getstarted.html) на любом языке программирования. 2. Пройти уроки 1, 2 и 3 из [RabbitMQ Tutorials](https://www.rabbitmq.com/getstarted.html) на любом языке программирования.
3. Продемонстрировать работу брокера сообщений. 3. Продемонстрировать работу брокера сообщений.
## Установка брокера сообщений RabbitMQ. ## Установка брокера сообщений RabbitMQ
Можно не использовать Docker и использовать локальный ПК. Можно не использовать Docker и использовать локальный ПК.
@ -20,7 +20,7 @@
Достаточно для каждого урока скриншота, где виден запуск одновременно `producer` и `consumer`, а также видно, что сообщения передаются. Достаточно для каждого урока скриншота, где виден запуск одновременно `producer` и `consumer`, а также видно, что сообщения передаются.
# Разработка демонстрационных приложений ## Разработка демонстрационных приложений
См. 3 главу tutorial. См. 3 главу tutorial.
@ -31,7 +31,7 @@
Программа должна раз в секунду генерировать сообщения в журнал событий согласно вашей предметной области. Программа должна раз в секунду генерировать сообщения в журнал событий согласно вашей предметной области.
Например, событие "пришёл заказ" или "сообщение от пользователя" или "необходимо создать отчёт". Например, событие "пришёл заказ" или "сообщение от пользователя" или "необходимо создать отчёт".
2. **Consumer 1**. 2. **Consumer 1**.
Программа, которая создаёт под себя отдельную неанонимную (!) очередь (**queue**) (то есть имя queue НЕ пустая строка), создаёт **binding** на **exchange** и начинает принимать сообщения (_consume_). Программа, которая создаёт под себя отдельную не анонимную (!) очередь (**queue**) (то есть имя queue НЕ пустая строка), создаёт **binding** на **exchange** и начинает принимать сообщения (_consume_).
Программа должна обрабатывать сообщения, например, 3 секунды. Программа должна обрабатывать сообщения, например, 3 секунды.
Можно реализовать через обычный _Thread.Sleep_ (для C#). Можно реализовать через обычный _Thread.Sleep_ (для C#).
3. **Consumer 2**. 3. **Consumer 2**.
@ -51,7 +51,7 @@
Код и отчёт со скриншотами необходимо положить в папку `tasks/фамилия-инициалы/lab_4`. Код и отчёт со скриншотами необходимо положить в папку `tasks/фамилия-инициалы/lab_4`.
Не забудьте о файле `.gitignore`, чтобы не закоммтить ничего лишнего. Не забудьте о файле `.gitignore`, чтобы не закоммитить ничего лишнего.
Для C#-проектов это, например, папки `bin` и `obj`. Для C#-проектов это, например, папки `bin` и `obj`.
Правила именования ветки: `фамилия-инициалы-lab-номер`, например, `moiseev-vv-lab-4`. Правила именования ветки: `фамилия-инициалы-lab-номер`, например, `moiseev-vv-lab-4`.