Технические требования и описание
Настоящий раздел содержит техническое описание программного обеспечения GANDIVA: применяемые архитектурные решения, состав поставляемых компонентов, требования к программному окружению, способы развёртывания, масштабирования и интеграции.
Ключевые архитектурные характеристики
- Сервисно-ориентированная архитектура (SOA). Система построена из независимых сервисов, взаимодействующих по стандартным сетевым протоколам.
- Контейнеризация. Компоненты поставляются в виде образов docker и исполняются в виде контейнеров docker.
- Оркестрация. Управление контейнерами осуществляется средствами оркестратора (такими как Swarm или Kubernetes) — в зависимости от масштаба внедрения.
- Защищенное соединение. Всё клиентское взаимодействие выполняется по защищённому протоколу HTTPS; терминация TLS выполняется на обратном прокси.
- Горизонтальное масштабирование и балансировка нагрузки. Прикладные сервисы независимы и допускают запуск нескольких экземпляров.
- Хранение данных в СУБД PostgreSQL, включая кластерные решения.
- Интеграция через REST API с внешними системами предприятия и синхронизация с каталогами LDAP/Active Directory.
Состав поставляемых сервисов
В текущей конфигурации развёртываются и используются следующие сервисы:
- Обратный прокси — системный сервис. Принимает клиентские соединения, выполняет терминацию HTTPS и балансировку нагрузки между экземплярами прикладных сервисов;
- API-приложение — прикладной сервис. Реализует серверную бизнес-логику и программный интерфейс (REST API);
- Web-приложение — прикладной сервис. Обеспечивает пользовательский веб-интерфейс;
- СУБД — Постоянное хранение данных обеспечивает СУБД PostgreSQL, развёртываемая на отдельном узле или в кластере.
* В ближайших выпусках ПО все фоновые и запускаемые по расписанию процессы выделяются в отдельный прикладной сервис (планировщик), не публикуемый во внешнюю сеть.
Схема информационных потоков
Всё взаимодействие с системой проходит через обратный прокси по протоколу HTTPS. Браузеры, мобильные приложения и синхронизация с каталогами LDAP/Active Directory поддерживаются системой напрямую. Внешние приложения предприятия (например, ERP и другие приложения предприятия) подключаются через отдельные блоки интеграции.
Содержание раздела
- Архитектура решения — сервисно-ориентированная архитектура, состав компонентов, оркестраторы, системы виртуализации;
- Поддерживаемые операционные системы — серверное программное окружение;
- Клиентские рабочие места и браузеры — требования к рабочим местам пользователей;
- Защищённое сетевое взаимодействие— транспортная безопасность;
- Масштабирование и балансировка нагрузки — обеспечение производительности и отказоустойчивости;
- Подсистема хранения данных — СУБД и кластерные конфигурации;
- Интеграция с внешними системами— программные интерфейсы и обмен данными при помощи REST API.