heroku - socket.io-redis 和 heroku 中超出了最大调用堆栈大小

标签 heroku redis socket.io-1.0 koa

我正在尝试在我的应用程序中使用 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/

相关文章:

list - 在redis列表中按值获取项目的索引

sql-server - 调用的目标抛出了异常。 (REDIS缓存)

node.js - 在 Socket.IO 1.0 中配置超时和传输

python - 如何在 Heroku 上设置 ArangoDB?

git push heroku origin ~ 致命 : No path specified

indexing - 使用Redis排序集建立索引

javascript - ( Electron 与服务器)未捕获的 EvalError : Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of script

ruby-on-rails - Rails 3,迁移在本地有效,在 Heroku 中不起作用?

heroku - 免费的heroku dyno 有最低 sleep 时间限制吗?

javascript - Socket.io-client 触发重复的 'reconnect_failed' 事件