Я соглашаюсь с тем, что владелец сайта использует файлы cookie для повышения удобства работы на сайте, оставаясь на сайте, я соглашаюсь с политикой их применения.
Согласен
[CAPS]chat — это платформа для совместной работы с открытым исходным кодом, предлагающая
безопасный обмен сообщениями, файлами и интеграцию для командного общения. Она
размещается на собственном сервере, предоставляя ИТ-администраторам полный контроль над
данными, безопасностью, интеграциями и настройкой. Платформа построена на модульных
компонентах, обеспечивающих масштабируемость, гибкость и расширяемость.

Обзор рабочего процесса
Пользователи подключаются через различные точки доступа (веб, мобильные устройства,
настольные компьютеры, электронная почта). Их запросы обрабатываются прикладным уровнем
([CAPS]chat Server), который управляет обменом данными через API, аутентификацией,
уведомлениями и рабочими процессами обработки данных.
Бэкенд-инфраструктура поддерживает эти операции, храня все данные и файлы в хорошо
спроектированных системах хранения.
Расширяемость и уровни безопасности обеспечивают бесшовную интеграцию платформы с
корпоративными системами, одновременно защищая конфиденциальные данные.
Основные компоненты
Техническая архитектура состоит из 3 основных уровней: уровень доступа, уровень приложений и
бэкэнд-инфраструктура.

Уровень доступа
Уровень доступа включает в себя все способы взаимодействия пользователей с [CAPS]chat,
обеспечивая безопасную, масштабируемую и надежную связь между предпочитаемыми
платформами. Меры обеспечения высокой доступности гарантируют бесперебойную работу для
пользователей даже в случае сбоев серверов или сети.Веб-интерфейс: Пользователи могут получить доступ к [CAPS]chat через веб-браузер (Chrome, Firefox, Safari, Edge). Веб-клиент взаимодействует с сервером [CAPS]chat по протоколу HTTPS.
Высокая доступность веб-интерфейсов может быть достигнута за счет балансировки нагрузки
обратных прокси-серверов (например, NGINX или HAProxy), которые распределяют
пользовательский трафик между несколькими экземплярами сервера [CAPS]chat. Резервные
прокси-серверы могут обеспечить сценарии отказоустойчивости для поддержания
работоспособности веб-интерфейса во время сбоев.
Настольные и мобильные приложения: Нативные приложения для iOS, Android, macOS, Windows и
Linux обеспечивают бесперебойную работу на всех устройствах. Эти приложения используют
защищенные API для взаимодействия с сервером в целях обмена сообщениями и обновлениями в
режиме реального времени. Высокая доступность может быть обеспечена развертыванием
резервных кластеров серверов для обработки запросов API, а также механизмами переключения
на резервные серверы, которые автоматически перенаправляют трафик на работоспособные
серверы. Мобильные приложения также выигрывают от механизмов повторных попыток и
резервных служб для push-уведомлений, что обеспечивает оперативность отклика в режиме
реального времени.
Взаимодействие с электронной почтой: Поддержка почтовых клиентов, таких как Outlook, Gmail или
Thunderbird, позволяет интегрировать уведомления по электронной почте (например, оповещения
о новых сообщениях, приглашения) в типичные рабочие процессы пользователей. Уровень доступа
гарантирует, что пользователи всегда подключены через выбранные ими платформы,
поддерживая при этом безопасные и синхронизированные каналы связи. Почтовые службы могут
быть настроены с использованием нескольких SMTP-серверов для обеспечения резервирования,
гарантируя отправку уведомлений без задержек, даже если основной почтовый сервер станет
недоступен.
Уровень доступа играет критически важную роль в обеспечении постоянного подключения
пользователей через выбранные ими платформы, поддерживая при этом безопасные и
синхронизированные каналы связи. Благодаря мерам обеспечения высокой доступности
организации могут гарантировать бесперебойную работу пользователей независимо от масштаба
или сложности развертывания системы.

Прикладной уровень
Сервер [CAPS]chat является сердцем платформы и отвечает за обработку всех пользовательских и
системных операций. Он состоит из множества модульных элементов, а именно:
REST API (JSON веб-сервис): обрабатывает все входящие API-запросы (от веб-клиентов, приложений
и интеграций) и обеспечивает форматирование ответов в формате JSON. Выступает в качестве
связующего звена между клиентами (уровень доступа) и бэкэнд-системами. Для обеспечения
высокой доступности этот уровень может быть распределен по нескольким серверам и
балансировать нагрузку, предотвращая сбои в работе сервиса из-за высокой нагрузки или отказа
сервера.

Клиент аутентификации: управляет аутентификацией пользователей, обеспечивая безопасные
сеансы входа в систему. Интегрируется с традиционной аутентификацией на основе имени
пользователя/пароля или корпоративными решениями, такими как единый вход через Active
Directory/LDAP. Высокая доступность поддерживается за счет резервных узлов аутентификации и
механизмов отказоустойчивости, обеспечивая непрерывный доступ даже в случае отказа основной
службы аутентификации.

Провайдер аутентификации: предоставляет подключаемые фреймворки аутентификации для
поддержки служб идентификации. Особенно важен для корпоративных сред с централизованным
управлением идентификацией. Стратегии резервирования и отказоустойчивости обеспечивают
надежность за счет распределения фреймворков аутентификации по нескольким серверам и
предоставления резервных вариантов для бесперебойного управления идентификацией.

Сервис уведомлений: отправляет уведомления через поддерживаемые каналы:
Push-уведомления: уведомления в режиме реального времени на устройства iOS и Android (через
службу Push-уведомлений). Высокая доступность обеспечивается за счет нескольких серверов
уведомлений и механизмов повторной отправки, гарантирующих доставку уведомлений даже в
случае сбоев в работе сервиса.
Уведомления по электронной почте: доставляются пользователям, когда они находятся в
автономном режиме или нуждаются в оповещениях о событиях. Балансировка нагрузки ирезервные конфигурации почтовых серверов помогают обеспечить стабильную и надежную
доставку электронной почты.

Сервис управления данными: отвечает за управление данными сообщений, метаданными,
профилями пользователей и журналами. Обеспечивает целостность данных, передаваемых между
базой данных и сервером. Этот уровень служит операционным ядром платформы, координируя
действия пользователей с возможностями обработки и интеграции данных.
Высокая доступность достигается за счет репликации базы данных, стратегий отказоустойчивости и
распределенных механизмов обработки данных. Эти меры обеспечивают бесперебойный доступ к
данным и защищают от сбоев компонентов или простоев. Служба управления данными служит
операционным ядром платформы, координируя действия пользователей с помощью
масштабируемых и отказоустойчивых возможностей обработки данных.

Бэкенд-инфраструктура
Бэкенд-инфраструктура обеспечивает возможности хранения и обработки данных, необходимые
для работы [CAPS]chat. Она состоит из следующих компонентов:
Системы баз данных: [CAPS]chat использует PostgreSQL в качестве основной базы данных для
хранения всех постоянных данных, таких как:
  • Сообщения
  • Учетные записи пользователей и учетные данные
  • Настройки конфигурации
  • Метаданные команд/каналов
Для обеспечения высокой доступности системы баз данных могут использовать механизмы
кластеризации, репликации и отказоустойчивости. PostgreSQL поддерживает такие функции, как
синхронная и асинхронная репликация для создания реплик для обеспечения избыточности.
Облачные решения обеспечивают автоматическое переключение при сбоях и резервное
копирование, гарантируя непрерывную работу при сбоях системы.

Хранилище файлов: управляет всеми мультимедийными ресурсами (например, загруженными
файлами, изображениями, видео), которыми обмениваются между каналами. Решения для
хранения включают следующие варианты:
Локальное хранилище: файлы хранятся непосредственно в файловой системе сервера. Для
обеспечения высокой доступности избыточность может быть достигнута с помощью конфигураций
RAID или резервного копирования для восстановления после сбоев дисков.
Сетевое хранилище данных (NAS): Распространено среди предприятий, централизующих хранение
файлов в своей сети. Конфигурации NAS могут включать отказоустойчивые решения, такие как
распределенные системы или репликация для бесперебойного доступа.
S3: Предлагает масштабируемое облачное хранилище для крупных сред или организаций с
распределенными развертываниями. База данных и файловое хранилище обеспечивают
масштабируемость, гарантируя эффективную поддержку миллионов сообщений и файлов при
сохранении согласованности данных. S3 изначально поддерживает высокую доступность,
распределяя данные по нескольким зонам доступности, что исключает единую точку отказа.Меры обеспечения высокой доступности гарантируют масштабируемую и отказоустойчивую
поддержку миллионов сообщений и файлов при сохранении согласованности данных.
Расширения системы: [CAPS]chat — это не только инструмент для совместной работы, но и
платформа, разработанная для расширяемости. Ключевые возможности расширения включают:
Самостоятельно размещаемые интеграции: Подключайте [CAPS]chat к другим локальным или
облачным системам, таким как Jitsi, Jira, GitLab, или любым пользовательским интеграциям,
необходимым вашей команде. Используйте встроенные API и веб-хуки для автоматизации рабочих
процессов и запуска межсистемного взаимодействия. Для обеспечения высокой доступности
интеграции могут использовать резервные каналы связи и механизмы повторных попыток для
корректной обработки временных сбоев.
Аутентификация сторонних сервисов: Привязывайте интеграции к сторонним платформам
(например, API для импорта данных из Slack, сервисы OAuth). Сторонние сервисы идентификации
обеспечивают согласованные и безопасные потоки доступа пользователей. Сторонние сервисы
идентификации могут использовать стратегии балансировки нагрузки и отказоустойчивости для
обеспечения согласованных и безопасных потоков доступа пользователей даже при высокой
нагрузке или сбоях.
Функции безопасности и масштабируемости: Безопасность и масштабируемость заложены в
архитектуру, что делает [CAPS]chat идеальным решением для корпоративных задач:

Безопасность
Для управления внешним трафиком используется обратный прокси-сервер, например NGINX или
аппаратный прокси. Он защищает серверы, обеспечивает соблюдение HTTPS и балансировку
нагрузки.
Настраиваемое шифрование SSL/TLS гарантирует безопасность данных во время передачи.
Детальная настройка прав доступа и ролей пользователей обеспечивает безопасность
конфиденциальной информации внутри команд.
Масштабируемость и высокая доступность: Enterprise-сервер поддерживает развертывание
нескольких серверов [CAPS]chat в кластерной среде для балансировки запросов пользователей
между несколькими серверами, обеспечивая надежность и производительность в крупных
организациях. Кластеризация обеспечивает автоматическое переключение при сбоях, так что
трафик пользователей перенаправляется на работающие серверы в случае отключения.
Уведомления и коммуникационные сервисы: [CAPS]chat поддерживает асинхронную связь в
реальном времени, дополненную системами уведомлений, адаптированными для различных
рабочих процессов:
Push-уведомления: Доставляются на мобильные устройства для оповещений о сообщениях или
упоминаниях. Высокая доступность достигается за счет резервных служб уведомлений и
механизмов повторной попытки для надежной доставки.Интеграция с электронной почтой: обеспечивает регулярные уведомления, когда пользователи
находятся в автономном режиме или неактивны. Резервные почтовые серверы и распределенные
конфигурации гарантируют бесперебойную отправку уведомлений по электронной почте.
Эти сервисы обеспечивают непрерывное взаимодействие и коммуникацию.

Протоколы связи
Существуют также протоколы связи (HTTPS и WS), которые определяют тип соединения,
устанавливаемого пользователем с сервером [CAPS]chat. Меры обеспечения высокой доступности
гарантируют надежные и отказоустойчивые соединения между клиентами и сервером [CAPS]chat,
особенно в производственных средах.
Соединение HTTPS (Secure Hypertext Transfer Protocol)
Соединения HTTPS с сервером [CAPS]chat отображают страницы и обеспечивают доступ к основным
функциям платформы, но не включают интерактивность в реальном времени (которая
обеспечивается соединениями WSS).
HTTPS — это безопасный, зашифрованный протокол, настоятельно рекомендуемый для
использования в производственной среде. Незашифрованные соединения HTTP могут
использоваться на этапе первоначального тестирования и настройки, но никогда не должны
использоваться в производственной среде. Для обеспечения высокой доступности трафик HTTPS
должен обрабатываться обратным прокси-сервером (например, NGINX или HAProxy) с настройками
балансировщика нагрузки для распределения соединений между несколькими экземплярами
сервера [CAPS]chat. Резервные прокси-серверы обеспечивают возможности переключения при
сбоях, гарантируя бесперебойную работу.
WSS-соединение (защищенный протокол WebSocket)
Защищенные соединения WebSocket (WSS) с сервером [CAPS]chat обеспечивают обновления и
уведомления в реальном времени между клиентами и сервером.
Если WSS-соединение недоступно и используется HTTPS, система будет казаться работающей, но
обновления и уведомления в реальном времени отображаться не будут. В этом режиме работы
обновления будут появляться только при обновлении страницы. WSS имеет постоянное
соединение с сервером [CAPS]chat, когда клиент подключен, в то время как HTTPS имеет
прерывистое соединение и подключается к серверу только при запросе страницы или файла.
Высокая доступность для WSS-соединений может быть достигнута путем кластеризации серверов
[CAPS]chat и балансировки нагрузки WebSocket-соединений между узлами кластера. Прокси-
серверы и специфические для WebSocket конфигурации (такие как «липкие» сессии или сохранение
соединения) необходимы для поддержания интерактивности в реальном времени во время сбоев
сервера или сети.
Благодаря внедрению стратегий высокой доступности в коммуникационные протоколы, платформа
обеспечивает безопасные, масштабируемые и надежные соединения как для обычного
взаимодействия пользователей (через HTTPS), так и для обновлений в реальном времени (через
WSS). Эти меры имеют решающее значение для критически важных сред и распределенных
развертываний, где необходима непрерывная связь.

Использование VPN
[CAPS]chat предназначен для установки в частной сети, которая может обеспечить многофакторную
аутентификацию, включая безопасный доступ к вычислительным устройствам и физическим
местоположениям. Если требуется внешний доступ, рекомендуется использовать клиент
виртуальной частной сети (VPN), например OpenVPN, с дополнительной аутентификацией для
подключения к [CAPS]chat для веб-, настольных и мобильных приложений.

Настройка без VPN
Если [CAPS]chat доступен из открытого интернета, рекомендуется следующее:
Назначить ИТ-администратора для настройки соответствующей сетевой безопасности, подписки на
бюллетень безопасности [CAPS]chat и применения новых обновлений безопасности.
Если [CAPS]chat доступен из открытого интернета без VPN или MFA, рекомендуется использовать
его только для неконфиденциальных, неважных разговоров, где влияние скомпрометированной
системы не является существенным.

Порты служб [CAPS]chat
В следующей таблице перечислены порты служб [CAPS]chat для сервера [CAPS]chat, прокси-сервера
push-уведомлений и мобильных приложений. Системные администраторы, чьи клиенты должны
взаимодействовать с сервером [CAPS]chat без прокси-сервера, могут открывать необходимые
порты брандмауэра.
г.. Москва, вн.тер.г. муниципальный округ Якиманка, ул.. Большая Полянка, д.. 42, стр. 1, помещ. 4/1
Документ о соглашении использования персональных данных