Масштабирование и балансировка нагрузки
Архитектура GANDIVA рассчитана на горизонтальное масштабирование. Прикладные сервисы независимы и допускают одновременную работу нескольких экземпляров, что позволяет наращивать производительность системы и обеспечивать отказоустойчивость.
Масштабирование
Может быть запущено несколько экземпляров прикладных сервисов — как REST API-приложения, так и Web-приложения. Поскольку сервисы независимы, запросы пользователей могут обрабатываться любым из доступных экземпляров.
Балансировка нагрузки
В простейшей конфигурации распределение клиентских запросов между экземплярами прикладных сервисов выполняет обратный прокси. При использовании оркестратора (Docker Swarm или Kubernetes) балансировка и поддержание заданного числа экземпляров обеспечиваются также средствами самого оркестратора. Совместно это даёт:
- равномерное распределение нагрузки между экземплярами сервисов;
- возможность увеличивать или уменьшать число экземпляров в зависимости от нагрузки;
- сохранение работоспособности системы при выходе из строя отдельного экземпляра.