diff --git a/tasks/plaksina-av/lab_8/README.md b/tasks/plaksina-av/lab_8/README.md new file mode 100644 index 0000000..13f6040 --- /dev/null +++ b/tasks/plaksina-av/lab_8/README.md @@ -0,0 +1,27 @@ +# Отчет по лабораторной работе №8 + +Выполнила студентка гр. ИСЭбд-41 Плаксина А.В. + +# Эссе на тему уйстройства распределенных систем + +Сложные системы, такие как социальная сеть ВКонтакете пишутся в распределенном стиле, так как такие сервисы обладают очень большим числом пользователей и соответствующей нагрузкой на сервисы, то логично было бы разбить такое приложение на несколько микросерсивов. +Во-первых, это повышает масштабируемость, что позволяет работать системе более эффективно, при этом не понижая ее производительность; +Во-вторых, это увеличение отказоустойчивости, так как если один элемент выходить из строя, то вся система будет продолжать работать. + +Существуют такие системы как оркестры приложений, это такие технологии, которые поддерживают сложные распределенные системы с большим количеством компонентов. Они облегчают развертывание, масштабирование и самое управление такими приложениями, тем самым повышая производительность и отказоустойчивость. +Такие системы помогают управлять всеми докер контейнерами сразу, минимизирует работу при их разварачивании, тем самым давая возможность разработчикам концетрироваться на улучшениие функциональности, не отвлекаясь на саму инфаструктуру. + +Существует такой механизм, как очереди обработки сообщений, который является интсрументом для управления асинхронными сообщениями в распределенных системах. Очереди помогают равномерно распределять нагрузку на систему и обеспечивать более стабильную работу, улучшая ее гибкость и отказоустойчивость. Сообщения в этом случае – это просто данные или команды, которые передаются между компонентами системы для выполнения определенных действий. + +На мой взгляд, у распределенных систем есть как и преимущества, так и недостатки. +Например, к плюсам можно отнести: +- способность обрабатывать большое количество запросов; +- при отказе работы одного из микросерверов, другие его распределят его работу между собой; +- высокая производительность; +К минусам относится: +- сложность разработки таких систем +- задержки передачи данных по сети + +В распределенные системы можно внедрить параллельные вычисления. +Это целесобразно сделать тогда, когда нужно повысить производительность ситсемы и обрабатывается большой объем матрицы (такое мы могли наблюдать при перемножение матриц и вычислении детерминанта). Если задачи незавсимы друг от друга, то распараллеливание тоже может быть эффективно; +Если же объем данных небольшой и задачи зависимы друг от друга, должны выполняться последовательно (в таких случаях сложно выявить ошибку), то внедрять параллельные вычисления будет нецелесообразно. \ No newline at end of file