我正在尝试在我的应用程序中使用 socket.io。我看到我需要使用 socket.io-redis 来解决我的多个测功机问题。但是当我尝试使用 redis-cloud 和 socket.io-redis 时,我不断收到“超出最大调用堆栈大小”。下面是我的代码
io.adapter(redis({
pubClient: require("redis").createClient(PORT, HOST, {return_buffers: true}),
subClient: require("redis").createClient(PORT, HOST, {return_buffers: true})
}));
我的 session 也使用 koa-session-redis
koa.use(session({
store: {
host: HOST,
port: PORT
}
}))
先谢谢大家
最佳答案
这可能不是答案,因为我在非常不同的配置中遇到了同样的错误,但在我的例子中,我发现错误来自 msgpack
模块,msgpack.js,第 465 行 & sizeof
方法的 466:
if('function' === typeof value.toJSON)
return sizeof(value.toJSON());
您是否有可能在您的套接字上推出一个以存在自引用或循环引用的方式实现 toJSON 的对象?
关于heroku - socket.io-redis 和 heroku 中超出了最大调用堆栈大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26400897/