我有一个关于在 Heroku 上扩展 SailJS 应用程序的问题。
设置:
我想自主运行一个连续的“cron”进程,该进程触发一个推送消息,该消息必须发送到连接的 socketio 客户端。当正确配置时,我知道套接字连接驻留在 Redis 中。
我将kue用于 nodejs,并触发一个工作人员来处理任务。worker 位于 SailsJS 实例中,能够向连接的套接字客户端发送推送消息。
但我想知道,不是每个 SailsJS 实例(dyno)都有相同的连接套接字,对吧?换句话说,每个 SailsJS 实例是否都有相同的连接套接字客户端可用,或者 dyno1 是否有一组连接的客户端,而另一个 dyno 有另一组客户端?
例如:
Heroku Cloud => Cron => Kue (Redis)
=> Dyno 1 (SailsJS instance) => client 1
=> client 2
=> Dyno 2 (SailsJS instance) => client 3
=> client 4
如何解决这个问题... :-D?