各位大佬:
我的程序是socket.io的即时通讯的服务,我的程序也没有使用cluster模块利用cpu,所以我想pm2部署是使用pm2的多进
程,但是当我使用时发现,pm2的方法相当于启动cpu核数个程序,所以当用户发言时,只有在当前核程序中的用户能接收
到推送,难道我要引入redis管理socket连接吗?
各位大佬:
我的程序是socket.io的即时通讯的服务,我的程序也没有使用cluster模块利用cpu,所以我想pm2部署是使用pm2的多进
程,但是当我使用时发现,pm2的方法相当于启动cpu核数个程序,所以当用户发言时,只有在当前核程序中的用户能接收
到推送,难道我要引入redis管理socket连接吗?
3 回答2.6k 阅读✓ 已解决
1 回答919 阅读✓ 已解决
2 回答1.2k 阅读
1 回答878 阅读✓ 已解决
2 回答1.6k 阅读
2 回答604 阅读✓ 已解决
2 回答1k 阅读
这种并发的扩展,要求程序本身是无状态的。你现在的状况是要在不同的进程中起socket服务,就需要进程之间共享信息。你现在的状况,加个消息服务器,是解决问题比较简单的方式。