【发布时间】:2015-08-27 14:41:36
【问题描述】:
我遇到的问题是,在为 heroku 使用免费插件时,我被限制为 20 个 Redis 连接。每个订阅事件都使用一个连接,导致我的应用程序在有限的使用情况下最大化。该应用程序是使用 Web 套接字的消息传递服务。我理解因为使用免费托管服务而进行重构可能看起来是一个糟糕的决定,但是,这是 Redis 唯一的用途。
【问题讨论】:
-
您不应该为每个订阅创建一个到 Redis 的新连接,每个进程只创建一个。您是否将客户端直接连接到 Redis?
-
每个订阅都会锁定该 Redis 实例。是的,我正在为每个 websocket 连接创建一个新的订阅,因此也为每个连接创建一个新的 Redis 实例。当尝试共享一个订阅所有 websocket 时,事情开始变得比我想要的更复杂。
-
嗯,你做的事情很复杂,你做的越有效率,它就越复杂,这就是开发的工作原理,哈哈。
-
Touché :) 快、好或便宜。我只能选择两个。
标签: ruby-on-rails ruby redis