31 lines
4.2 KiB
Markdown
31 lines
4.2 KiB
Markdown
|
# Лабораторная работа № 8. Как Вы поняли, что называется распределенной системой и как она устроена?
|
|||
|
|
|||
|
### Что такое распределенная система?
|
|||
|
Распределенная система - это система состоящая из множества независимых узлов, каждый из которых выполняет строго свою функцию
|
|||
|
Сегодня многие крупные приложения построены как распределенные системы. Это сделано для того, чтобы повысить эффективность выполнения задач, а также для более лучше масштабируемости, когда для улучшения обработки запроса нам нужно лишь поднять еще несколько экземпляров определенного сервиса.
|
|||
|
|
|||
|
### Системы оркестрации
|
|||
|
Система оркестрации - это система над системой, то есть система, которая руководит распределенной системой. Такие системы решают как распределить нагрузку, ресурсы, нужно ли поднять новые экземпляры того или иного сервиса и прочее. Плюс: единая централизованное управление распределенной системой. Минус, вытекающий из плюса: единая точка входа и выхода, что может положить всю систему.
|
|||
|
|
|||
|
### Брокеры сообщений
|
|||
|
Брокер сообщений - это система, которая позволяет связывать разные приложения и налаживать между ними связь. Брокеры состоят, в основном, из:
|
|||
|
- Сообщения - некоторая информация, которую нужно передавать между разными приложениями
|
|||
|
- Продюсеров - приложения, создающие сообщения
|
|||
|
- Очереди сообщений, которые хранят сообщения до того момента, когда их смогут отправить получателю
|
|||
|
- Получатели - приложения, которые принимают сообщения и используют информацию из них.
|
|||
|
|
|||
|
### Плюсы и минусы распределенных систем
|
|||
|
Плюс:
|
|||
|
- Эффективность. Два сервера обработают один запрос быстрее, чем один сервер
|
|||
|
- Надежность. Если один сервер упал, то нагрузку всегда можно переправить на другой сервер
|
|||
|
- Масштабируемость. Улучшить работу приложения можно добавив несколько новых серверных узлов.
|
|||
|
|
|||
|
Минусы:
|
|||
|
- Технологическая сложность в реализации.
|
|||
|
- Сложность в обеспечении общения между сервисами
|
|||
|
|
|||
|
### Параллельные вычисления
|
|||
|
Параллельные вычисления - это вычисления, происходящие одновременно. Такие вычисления хороши, когда нужно обработать большие объемы данных, но не в ситуациях, когда работаем с небольшими объемами данных, так как это может создать лишние издержки.
|
|||
|
Пример:
|
|||
|
- Нужно использовать параллельные вычисления, когда вычисляем произведение двух больших матриц
|
|||
|
- Не нужно использовать параллельные вычисления, когда нам нужно вычислить сумму элементов небольшого массива.
|