Я использую socket.io с несколькими узлами, socket.io-redis и nginx. Я следовать этому руководству: http://socket.io/docs/using-multiple-nodes/Как проверить, что сокет жив (подключен) в socket.io с несколькими узлами и socket.io-redis
я пытаюсь сделать: На функции (сайт сервера), я хочу, чтобы запросить по socketid, что этот разъем подключен или отключить
Я попытался io.of('namespace').connected[socketid]
, это работает только для тока (это означает, что он может проверять только текущий процесс).
Кто-нибудь может мне помочь? Благодарим за продвижение.
Привет, я имею в виду, что я хочу проверить разъем подключен или нет с socketid. это не означает, что контрольный разъем подключен или нет. ваш подход не может решить проблему 2: 1. У меня есть socketid, я хочу проверить, есть ли сокет подключен или нет? 2. Событие connect and disconnect будет асинхронно срабатывать. возможно, на самом деле. Сначала он подключается и отключается, но на сервере по многим причинам сначала отключается событие отключения и подключается позже. Так что на самом деле это отключается, но на сервере он подключен –
Пожалуйста, обновите свой комментарий, поскольку я не совсем понимаю, что вы пытаетесь сделать. Каждый узел ** не должен ** иметь все сокеты, но это нормально, если ** один узел ** запрашивает все узлы с идентификатором socketId, чтобы узнать, есть ли он там. Просто добавьте слой связи между вашими узлами, если вы действительно хотите запросить сокет. –
Я пытаюсь сделать: При использовании функции на одном узле я хочу запросить сокетайд, чтобы этот сокет был подключен или отключен. Нелегко сделать слой связи между узлами, отправив сообщение всем узлам и получить возвращаемое значение, чтобы проверить, что сокет подключен или отключен. вы можете ссылаться на http://socket.io/docs/rooms-and-namespaces/#sending-messages-from-the-outside-world –