О продукте

Сервис User Status предназначен для хранения информации о статусах, а также для уведомления об изменении статуса пользователя на внешних сервисах.

Сервис поставляется в Docker-контейнерах и состоит из набора сервисов:

  • RabbitMQ — программный брокер сообщений на основе стандарта AMQP;
  • PostgreSQL — свободная объектно-реляционная система управления базами данных.

На рисунке ниже представлена упрощённая схема взаимодействия User Status Service, Elph Chat Server и Elph Proxy:

Схема взаимодействия User Status Service, Elph Chat Server и Elph Proxy

Системные требования

Протестированные операционные системы:

Astra Linux SE
Версия ОС1.7.31.7.51.7.61.771.8
Протестировано+++++
Ubuntu Linux
Версия ОС18.0420.0422.0424.04
Протестировано +++

+

Минимальные аппаратные требования:

  • ОЗУ: 4 ГБ;
  • ПЗУ: 10 ГБ (2,5 ГБ будет занято приложением + ОС, остальное для базы данных);
  • CPU: 2 ядра 2.5 ГГц и выше.

Максимальные показатели, которых получилось достичь при нагрузочном тестировании (при подаче одновременно подписок, get запросов и change_status запросов):

  • 2000 подписок;
  • 500 RPS для get запроса от разных пользователей;
  • 180 RPS для запроса смены статуса.

При этом сервер с 2 ядрами CPU, 4 ГБ RAM был загружен примерно на половину.

Данная нагрузка приблизительно соответствует 4000 пользователей Chat Server.

  • Нет меток