cvut courses
January 16, 2025

16-01-2025   

Распределенные системы и вычисления

Предмет из 5 семестра. Для меня он один из самых сложных.

Предмет интересен тем, что я сделал рабочую версию семестральной работы за один день, а точнее за ночь. Это была бессонная ночь.

Работать на семестралке началась в декабре, но процесс шел медленно. И я не торопился и не особо знал, что там именно сделать.

Я знал что надо запустить 5 виртуальных машин и потом запустить параллельно узлы на каждой из машин, затем мне надо было соединить эти узлы в топологию.

Есть разные топологии, например кольцевая, когда у узла есть сосед предыдущий (previous) и следующий (next). Но у меня была топология Full Mesh, в мой сети каждый из узлов связан друг с другом.

Проблема в том, что я расслабился в декабре, и занимался не слишком усердно. И так получилось, что перед Новым годом у меня была какая-то непонятная программа.

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

Уже через пару дней я сделал вторую версию. Функционал уже был получше. Я заранее добавил статические адреса виртуальных машин и программа работала очень даже неплохо.

В первой учебной неделе я был на консультации с учителем. Учитель сказал, добавить адреса динамически с помощью скриптов, также он сказал, чтобы я сделал запуск узлов через скрипты. А вдруг он захочет запустить 100 или даже 1000 узлов. Я сказал, что у меня ноутбук столько не потянет.

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

Я создал наверно еще 2 версии программы, но они были далеки от того, что хотел учитель.

И вот до дедлайна остается неделя. И я иду на консультацию, на которой решил все же сдавать программу. Динамические адреса добавил, ок. Скрипты добавил, тоже ок. Но из-за того что я запускал на разных виртуальных машинах, были разные потоки, иногдп была проблема, когда в топологии умирал лидер. Препод тестировал так, что он ставил на паузу виртуальную машину.

В общем, он сломал программу. В итоге пришлось, записаться на следующую встречу. Но функционал со скриптами ему понравился.

В итоге записался через 3 дня на консультацию.

За это время я сделал 5 версию программы, но и там проблема была на виртуальных машинах. Но на винде смог починить.

В итоге остается один день, у меня консультация на следующий на 9 утра. Вечером в 11 часов я начинаю новый проект, уже 6 версия. И знает что в итоге, примерно к 3-м или к 4-м часам ночи я смог все починить. Начать новый проект было отличным решением. Я смог сделать необходимый функционал за одну ночь.

На следующее утро я уже сдал проект. Учитель придирался очень.

Сначала хотел поставить 75% от общих баллов, я хотел больше потому что у меня сделан функционал программы, но скрипт что-то не так выводил. В итоге он начал проверять другого и я исправил то что он хотел. Он мне предложил 90%. Но я ему говорю давайте 93%, он согласился. В итоге бессонная ночь была не напрасна и я сдал семестралку.


Если у вас есть еще вопросы или идеи, что я мог бы добавить, вы можете написать мне здесь.

Больше статей будет в этой группе.