Архитектурная схема Squadus

| Функциональные группы | Наименование группы ролей | Выполняемые функции |
|---|---|---|
| Основная группа сервисов (ядро системы) | squadus_apps | Сервис основного функционала мессенджера Squadus |
| squadus_microservices | ||
| squadus_mail | ||
| Инфраструктурная группа | squadus_infra | Сервис мониторинга и логирования |
| Поиск, без изменений | squadus_search | Сервис поиска, без внесения изменений |
| Менеджер сообщений и очередей | squadus_mq | Менеджер сообщений и очередей NATS |
| Группа ВКС | squadus_meet_apps | Сервис управления и настройки видеоконференций |
| squadus_meet_jvb | Сервис видеоконференций | |
| squadus_meet_jibri | Сервис записи видеоконференций | |
| Балансировщик | squadus_ha | Сервис балансировки нагрузки |
| Базы данных и хранилища | squadus_db | Основная база данных MongoDB. Служит для хранения профилей пользователей, чатов, групп, настроек. Для поддержки федерации и других внешних сервисов может быть развернут PostgresSQL |
| squadus_redis | База данных Redis. Служит для хранения токенов учётных данных пользователей и временных данных для ускорения работы продукта | |
| squadus_st | Объектное хранилище MinIO. Служит для хранения бинарных файлов, видеофайлов, прикрепленных файлов, аватарок и других изображений |