Почему MongooseIM закрывает соединение через websocket через 60 секунд?

Я использую MongooseIM в качестве сервера чата и подключаю его через websocket, используя xmpp.js внутри собственного реактивного приложения. Сервер принудительно закрывает соединение через 60 секунд после неактивности. Я хочу знать:

  1. Если это конфигурация по умолчанию?
  2. Должен / Могу ли я изменить это?
  3. Должен ли я настроить механизм пинга так, чтобы мой клиент отправлял несколько пингов через каждые 60 с, чтобы избежать отключения

1 ответ

Решение

Соединения WebSocket имеют значение времени ожидания по умолчанию для бездействия, установленное в бесконечность. Ваша конфигурация, скорее всего, содержит "{timeout, 60000}" в конфигурации "mod_websockets". Чтобы поддерживать незанятые соединения, подключенные к серверу, вы можете время от времени отправлять ping-кадры WebSocket.

Дополнительная информация о конфигурации "mod_websockets" находится здесь: https://mongooseim.readthedocs.io/en/latest/advanced-configuration/Listener-modules/

Вы даже можете настроить сервер на отправку ping-кадров WebSocket, указав опцию {ping_rate, ValueInMilliSeconds}

Другие вопросы по тегам