Решение: Используйте Redis
Я уверен, что вы будете рады узнать о существовании в Socket.io-Redis
С его помощью вы сможете отправлять/получать события (обмениваться клиентами) между несколькими экземплярами вашего кода (процессы или серверы). Read more : socket.io-redis (Github Repo.)
С этим можно масштабировать:
- вертикально (увеличить число нитей на машине)
- горизонтально (развернуть больше "мастеров" accross более машин)
There is an example app at github
Это очень простое клиентское/серверное приложение Node.JS, которое показывает , как настроить Express.js, Socket.IO 1.x и socket.io-redis вместе.
Это очень полезно в качестве отправной точки, чтобы понять, как масштабировать Приложения Socket.IO RealTime, требующие нескольких серверных процессов. Redis используется как точка хранения (адаптер), чтобы запускать несколько экземпляров socket.io в разных процессах или серверах, которые могут все передавать и передавать события друг другу и из них.
как насчет модуля «кластера»? Если вы хотите группировать. [Эта ссылка 'socket.io' + 'выражение для кластеризации] (https://gist.github.com/nulltask/1877289) –
вы можете сделать fork с помощью модуля кластера – user568109