# Лабораторная работа №4 - Работа с брокером сообщений ## Прохождение уроков Урок №1. ![img.png](lesson_1%2Fimg.png) Урок №2. ![img.png](lesson_2%2Fimg.png) Урок №3. ![img.png](lesson_3%2Fimg.png) Все приложения были разработаны на Python ## Разработанные приложения В качестве предметной области было выбрано общение учителя и его учеников. Учитель дает задание ученикам, а они их выполняют. Я выделил 2 вида учеников: обычные, которым нужно некоторое время на то, чтобы выполнить задание; крутые ученики, которые выполняют задание моментально, как только получают его. Были созданы следующие приложения: - teacher - программа, которая представляет учителя и отправляет задания ученикам - Student_Normal - программа, которая представялет обычного ученика, получает и обрабатывает, с задержкой, полученные задания. - Student_Cool - программа, которая представялет крутого ученика, получает и моментально обрабатывает полученные задания. Все программы были разработаны на языке Python. Проведенные тесты: #### Тест №1. Запущены 1 учитель, 1 обычный ученик, 1 крутой ученик: ![FirstTest.png](Teacher_student_message%2FFirstTest.png) Показатели очереди обычного ученика: ![FirstTest_Normal.png](Teacher_student_message%2FFirstTest_Normal.png) Показатели очереди крутого ученика: ![FirstTest_Cool.png](Teacher_student_message%2FFirstTest_Cool.png) Вывод: одного обычного ученика не хватает на то, чтобы выполнять все полученные в срок, ему тяжело :( Крутому же ученику все дается с легкостью. #### Тест №2. Запущены 1 учитель, 4 обычных ученика: ![SecondTest.png](Teacher_student_message%2FSecondTest.png) Показатели очереди обычного ученика: ![FirstTest_Normal.png](Teacher_student_message%2FFirstTest_Normal.png) Вывод: если 4 обычных ученика объединяться и будут делать задания вместе, то они смогут избежать переполнения очереди заданий. ## Запись тестирования Работа приложения представлена в [видео](https://disk.yandex.ru/i/zzwvXXpZhavh7A)