Я пытаюсь масштабировать с помощью экспресс-поддержки. Проблема в том, что каждый раз, когда пользователь приходит или я перезапускаю сервер, он получает новый socket.id. Кроме того, я не могу сохранить весь сокет в памяти, потому что он дает мне проблему [Circular JSON]. Как сохранить часть пакета в redis, что позволит мне получить тот же сокет с других серверов?Масштабирование express/node.js с socket.io по горизонтали с redis
1
A
ответ
3
Вам необходимо отделить пользователя от socket.id. Сокет socket.id нестабилен и может меняться даже при обновлении браузера. Вместо этого, когда пользовательский сокет подключается, взгляните на данные рукопожатия, которые передаются, и используйте это, чтобы связать сокет с пользователем. Что касается сохраняющихся данных сокета в redis, которые уже могут быть обработаны для вас, используя socket.io-redis.
Посмотрите на эту ссылку для масштабирования Socket.io: http://socket.io/docs/using-multiple-nodes
Смежные вопросы
- 1. Масштабирование Socket.IO с Redis, а затем масштабирование самого Redis
- 2. Масштабирование Engine.IO с магазином Redis (vs. Socket.IO)
- 3. Масштабирование Postgres по горизонтали
- 4. Масштабирование сервера по горизонтали
- 5. Масштабирование приложения laravel по горизонтали?
- 6. Масштабирование socket.io между серверами
- 7. Redis Store с Socket.io
- 8. Горизонтально шкала socket.io с Redis
- 9. Масштабирование базы данных по горизонтали с помощью PHP mysql
- 10. Redis - масштабирование по различным областям ec2
- 11. Извлеките Socket.io Client из Redis
- 12. Node.js - Масштабирование с атомными обновлениями Redis
- 13. Проблемы с клиентами Redis (в контексте Socket.IO)
- 14. Поддерживает ли socket.io-redis redis кластеры?
- 15. Использование кластерного модуля pm2 с socket.io и socket.io-redis
- 16. не может получить socket.io-emitter для работы с socket.io-redis
- 17. Socket.io: Как подсчитать клиентов в комнате с адаптером Socket.io-redis
- 18. Как отправить сообщение другому серверу socket.io с помощью socket.io-redis?
- 19. Пример использования socket.io-redis
- 20. Как использовать socket.io-redis с несколькими серверами?
- 21. Магазин Connect-redis не работает с socket.io
- 22. Хранить историю чата с socket.io-redis
- 23. Socket.io Redis ECONNREFUSED
- 24. Масштабирование до 2+ динамиков на Heroku с socket.io-redis и RedisToGo
- 25. Как масштабировать socket.io без redis
- 26. Socket.io и Redis pub/sub
- 27. Как по горизонтали с JQuery
- 28. Суммируя по горизонтали с условием
- 29. Проблема с узлом кластера с использованием Socket.io и Redis
- 30. Nodejs, Socket.io, Redis, Laravel - безопасность?
У меня есть Socket.io-Redis работает, но там, кажется, практически нет документации о том, как использовать его. Есть ли ссылки, которые могут помочь? – Ridan
Нельзя использовать его. Как только он настроен, он существует в фоновом режиме и гарантирует, что ваши различные узлы socket.io смогут общаться друг с другом. Настройка довольно проста: https://github.com/Automattic/socket.io-redis –