# Лабораторная работа №4
#### ПИбд-42. Мочалов Данила.

#### Выполнение туториала

- Первый
![Скриншот 1](./screenshots/tutorial_1.png)

- Второй
![Скриншот 2](./screenshots/tutorial_2.png)

- Третий
![Скриншот 3](./screenshots/tutorial_3.png)

#### Выполнение лабораторной работы

Выбранная предметная область: игровой лаунчер (а-ля Steam)

Сначала попробовал запустить продюсера, первого и второго консьюмера в одном экземпляре.

Результат:
![Скриншот 4](./screenshots/labwork_consumer_1_and_consumer_2.png)

Вывод: 
Очередь первого консьюмера быстро переполняется, так как скорость поступления сообщений в очередь больше чем скорость обработки сообщений первым консьюмером.
Очередь второго коньюмера никогда не заполняется, так как он моментально обрабатывает все входящие сообщения. 

Теперь запускаю сначала один экземпляр первого консьюмера, а потом несколько, чтобы они разгрузили накопившуюся очередь.

Результат:
![Скриншот 5](./screenshots/labwork_consumers_1_only.png)

Вывод:
Накопившаяся очередь быстро разгружается благодаря нескольким одновременно запущенным экземплярам первого консьюмера.

#### Демонстрация работы

На видео я сначала показываю как сильно загружается очередь при одном экземпляре первого консьюмера, потом запускаю еще парочку экземпляров и мы смотрим как очередь разгружается (и радуемся xd). 
Еще в моменте показываю что второй консьюмер тоже работает отлично.  
Видео по [ссылке](https://drive.google.com/file/d/1mgCpKw12GJZbYyAeqXKMQG9XbWI5gV_D/view?usp=sharing)