31 lines
4.6 KiB
Markdown
31 lines
4.6 KiB
Markdown
|
## Лабораторная работа 8. Вариант 5.
|
|||
|
### Задание
|
|||
|
Написать небольшое эссе (буквально несколько абзацев) своими словами на тему "Устройство распределенных систем".
|
|||
|
А помогут Вам в этом вопросы из списка:
|
|||
|
|
|||
|
Зачем сложные системы (например, социальная сеть ВКонтакте) пишутся в "распределенном" стиле, где каждое отдельное приложение (или сервис) функционально выполняет только ограниченный спектр задач?
|
|||
|
Для чего были созданы системы оркестрации приложений? Каким образом они упрощают / усложняют разработку и сопровождение распределенных систем?
|
|||
|
Для чего нужны очереди обработки сообщений и что может подразумеваться под сообщениями?
|
|||
|
Какие преимущества и недостатки распределенных приложений существуют на Ваш взгляд?
|
|||
|
Целесообразно ли в сложную распределенную систему внедрять параллельные вычисления? Приведите примеры, когда это действительно нужно, а когда нет.
|
|||
|
|
|||
|
### Реализация
|
|||
|
Распределенные системы обеспечивают эффективное функционирование сложных приложений. Среди таких можно выделить социальные сети,
|
|||
|
например, ВКонтакте. Возможность делегировать отдельным приложениям или сервисам ограниченный спектр задач в таких
|
|||
|
системах имеет свою важную логику. Это повышает отказоустойчивость, улучшает масштабируемость и обеспечивает более
|
|||
|
гибкую архитектуру, что особенно ценно в условиях растущего объема данных и пользовательского трафика.
|
|||
|
|
|||
|
Системы оркестрации приложений, такие как Kubernetes, были разработаны для упрощения управления и развертывания
|
|||
|
распределенных систем. Они предоставляют инструменты для автоматизации процессов, что упрощает разработку и
|
|||
|
сопровождение. В то же время, оркестрация добавляет свои сложности, требуя дополнительных знаний и навыков от
|
|||
|
разработчиков.
|
|||
|
|
|||
|
Очереди обработки сообщений являются важным элементом распределенных систем. Они обеспечивают асинхронную коммуникацию
|
|||
|
между компонентами, улучшая производительность и отзывчивость. Сообщения могут содержать запросы, уведомления или
|
|||
|
события, что делает их универсальным механизмом взаимодействия.
|
|||
|
|
|||
|
Преимущества распределенных приложений включают повышенную отказоустойчивость и масштабируемость. Однако, с ростом
|
|||
|
сложности возникают проблемы с согласованностью данных и сложностью отладки. Параллельные вычисления в распределенных
|
|||
|
системах оправданы в случаях высоконагруженных приложений, требующих обработки большого объема данных. Напротив,
|
|||
|
в некоторых случаях, например, в небольших системах, замедление из-за синхронизации может превысить выигрыш от
|
|||
|
параллелизма. Это требует внимательного анализа и оптимизации с учетом конкретных требований системы.
|