Здравствуйте. От чего могут быть частые дисконнекты с молниеносным реконектом?
У меня на событие "подключение" и "отключение" в чат приходит сообщение, мол юзер вошёл/вышел. И я постоянно получаю ивенты от ноды о таких реконнектах с задержкой между выходом-входом в 0.2-0.3с
Пример кода обработчика дисконекта с пользователем:
socket.on('disconnect', () => {
logger.info('Disconnect socket', { user_id, chat });
if (socket.handshake.query.chat !== undefined) {
// Отправляю отчёт в чат
if (user_id) {
const tempData = {
action: 'iAmOut',
chat,
sender: {
id: user_id,
name: user_name,
},
};
io.to(tempData.chat).emit('ACTION', tempData); // отправляю инфу в чат
}
// Меняю число активных пользователей чата
if (chat_id && user_id) {
pool.query(
"DELETE FROM `chats_members_active` WHERE `user_id` = ? AND `chat_id` = ? LIMIT 1",
[user_id, chat_id],
(error) => {
if (error) {
if ( logToggle ) logger.error('Error chats_members_active delete', { error });
}
},
);
}
}
});
Если нужно отвечу на доп.вопросы или скину нужные участки кода