
Для работы сообщений в Elph на сервере должен быть развёрнут ecss-chat-server. |
Chat Server предоставляет удобное и безопасное решение для обмена сообщениями в режиме реального времени. Он обладает широким функционалом, позволяющим пользователям войти в систему, создавать и управлять комнатами, отправлять сообщения и многое другое.
Функционал Chat Server:
- Пользователи могут создавать комнаты для группового общения или присоединяться к уже существующим комнатам. Chat Server обеспечивает возможность управления комнатами, включая изменение названия и аватара, добавление и удаление пользователей, назначение ролей: администратор и обычный пользователь;
- Пользователи могут отправлять текстовые и голосовые сообщения, изображения, видео и файлы в комнатах чата. Chat Server принимает эти сообщения и передает их всем пользователям, находящимся в той же комнате;
- Chat Server сохраняет историю всех сообщений, отправленных в каждой комнате. Это позволяет пользователям просматривать предыдущие сообщения, которые они могут пропустить или не видеть из-за отсутствия в чате;
- Предусмотрена возможность удаления сообщений для всех пользователей и чат-комнат для привилегированных пользователей;
- Chat Server обеспечивает доставку push-уведомлений на устройства с iOS и Android, что позволяет информировать пользователя о новых сообщениях и изменениях в чатах;
- Реализованы ответы на сообщения и возможность переслать сообщения в другой чат;
- Реакции на сообщения;
- Закрепления чатов и сообщений. Пользователь может закрепить важные сообщения сверху чата для быстрого перехода к ним;
- Папки для хранения чатов. Комнаты можно группировать по папкам для лучшей навигации между чатами;
- Чат с поддержкой всегда поможет при возникновении проблем. Также в этом чате можно отправить логи для подробного изучения возникшей проблемы и последующего ее решения.
Для работы уведомлений на устройствах Android и iOS необходим доступ к Google Services и Apple Push Notifications. При развертывании Chat Server в закрытом контуре, без обеспечения доступа к приведенным выше сервисам, уведомления Chat Server приходить не будут. |
На рисунке ниже представлена упрощённая схема интеграции Elph и ECSS-10.

Упрощённая схема интеграции Elph и ECSS-10
Системные требования
Протестированные ОС и платформы:
- Linux Ubuntu Server 18, 20, 22;
- Astra Linux 1.7.0.
Аппаратные требования:
- RAM: 8 ГБ (2,5 ГБ будет занято приложением + ОС, остальное для базы данных);
- CPU: 4 ядра, 4 потока 2,5 ГГц и выше.
При таких характеристиках обеспечивается нагрузочная способность около 1000 пользователей (c учётом того, что каждый пользователь даёт двойную нагрузку на сервер, так как пользуется чатом одновременно с мобильного и настольного приложений).
Системные требования для разного количества пользователей:
| Количество пользователей | ЦП | ОЗУ | Скорость соединения | Запросы в секунду (rps) | Сообщений пользователей в секунду | Количество экземпляров сервера |
|---|
| 1000 | 4 ядра 2,5 ГГц | 16 ГБ | 10 Мбит/с | 700 | до 10 | 2 |
| 2000 | 8 ядер 3 ГГц | 16 ГБ | 40 Мбит/с | 1500 | до 20 | 3 |
Максимальное проверенное количество websocket подключений к Chat Server составляет 9500, что соответствует 3000 пользователей.