Ruby on rails 带有Redis pubsub的Rails 5—一段时间后广播消息不会传输到客户端
我正面临一个奇怪的问题。我已经创建了一个ActionCable控制器,允许简化聊天室。 当一切正常时,日志消息显示调用广播时发送的Ruby on rails 带有Redis pubsub的Rails 5—一段时间后广播消息不会传输到客户端,ruby-on-rails,heroku,ruby-on-rails-5,actioncable,Ruby On Rails,Heroku,Ruby On Rails 5,Actioncable,我正面临一个奇怪的问题。我已经创建了一个ActionCable控制器,允许简化聊天室。 当一切正常时,日志消息显示调用广播时发送的消息 2017-03-05T10:29:21.624294+00:00 app[web.1]: I, [2017-03-05T10:29:21.624222 #4] INFO -- : [ActionCable] [abfcd3d23b1f4b895ce06cad5df51b8c] Registered connection (abfcd3d23b1f4b895ce
消息
2017-03-05T10:29:21.624294+00:00 app[web.1]: I, [2017-03-05T10:29:21.624222 #4] INFO -- : [ActionCable] [abfcd3d23b1f4b895ce06cad5df51b8c] Registered connection (abfcd3d23b1f4b895ce06cad5df51b8c)
2017-03-05T10:29:21.811899+00:00 app[web.1]: I, [2017-03-05T10:29:21.811815 #4] INFO -- : [ActionCable] [abfcd3d23b1f4b895ce06cad5df51b8c] ChatChannel is transmitting the subscription confirmation
2017-03-05T10:29:21.812216+00:00 app[web.1]: I, [2017-03-05T10:29:21.812170 #4] INFO -- : [ActionCable] [abfcd3d23b1f4b895ce06cad5df51b8c] ChatChannel is streaming from chat:room_6512bd43d9caa6e02c990b0a82652dca
2017-03-05T10:29:22.204456+00:00 app[web.1]: I, [2017-03-05T10:29:22.204364 #4] INFO -- : [ActionCable] [abfcd3d23b1f4b895ce06cad5df51b8c] ChatChannel#some_event
2017-03-05T10:29:22.204555+00:00 app[web.1]: I, [2017-03-05T10:29:22.204497 #4] INFO -- : [ActionCable] [abfcd3d23b1f4b895ce06cad5df51b8c] [ActionCable] Broadcasting to chat:room_6512bd43d9caa6e02c990b0a82652dca: {:type=>"some_event", :user=>"abfcd3d23b1f4b895ce06cad5df51b8c"}
2017-03-05T10:29:22.207224+00:00 app[web.1]: I, [2017-03-05T10:29:22.207164 #4] INFO -- : [ActionCable] [abfcd3d23b1f4b895ce06cad5df51b8c] ChatChannel transmitting {"type"=>"some_event", "user"=>"abfcd3d23b1f4b895ce06cad5df51b8c"} (via streamed from chat:room_6512bd43d9caa6e02c990b0a82652dca)
这是通过Redis部署在Heroku上的。当事情停止工作时,执行heroku restart
将修复所有问题并使事情再次工作
小更新
当尝试执行Redis.new.pubsub(“numsub”,“chat:room6512BD43D9CAA6E02C990B0A82652DCA”)
当一切正常时,我得到:
=> ["chat:room_6512bd43d9caa6e02c990b0a82652dca", 1]
=>[“聊天室”[U 6512bd43d9caa6e02c990b0a82652dca],1]
当事情停止运转时
=> ["chat:room_6512bd43d9caa6e02c990b0a82652dca", 0]
=>[“聊天室”[U 6512bd43d9caa6e02c990b0a82652dca],0]
有什么想法吗?所以我想我有答案了。数据库连接似乎已达到极限:2017-03-05T11:37:14+00:00应用程序[heroku redis]:source=redis\u URL示例#num\u connections\u over\u limit=1消息=数据库连接over limit。请升级您的数据库计划。我仍然不确定的是,为什么我没有看到任何异常抛出或错误,也似乎这是相关的,我正在尝试切换到Redis云,看看它是否有帮助 => ["chat:room_6512bd43d9caa6e02c990b0a82652dca", 0]