问题标签 [redistogo]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
postgresql - 无法在 5 秒内获得数据库连接 - Heroku 上的 Sidekiq 工作人员、独角兽、Redis ToGo
我有一堆更新数据库的后台任务(Sidekiq 工作人员),并且我不断收到这个失败的线程异常。
- Heroku
- Heroku Postgres :: Olive - 20 个连接限制。
- Redis ToGo - 10 个连接限制。
- Sidekiq - 2 个连接。
每个客户端请求创建约 50 个线程 - 最后约 20 个线程尝试更新数据库。现在我知道这是太多试图建立连接的线程(更新 Active:Record..)。我不介意他们等到成功再试一次。
-config/unicorn.rb
-config/initializers/sidekiq.rb
--condig/sidekiq.yml
非常感谢所有的帮助,埃尔达
node.js - 使用 socket.io-redis 和 RedisToGo 在 Heroku 上扩展到 2+ dynos
我正在尝试使用 socket.io-redis 将我在 Heroku 上的应用程序扩展到 2 个 dynos(或更多)。这是我的代码(其中 config.redis 只是一个包含 RedisToGo 端口、主机和传递值的对象):
在客户端,我有:
..so socket.io 不会尝试使用轮询。
我还为 RedisToGo 配置了正确的 Heroku 环境变量(REDISTOGO_HOST、REDISTOGO_PASS、REDISTOGO_PORT)。
当我们缩放到 1 dyno 时,套接字行为是完美的。在 2 个 dyno 上,行为是偏离的 - 请求是随机向 1 个 dyno 或另一个发出的,并且发出的套接字事件仅发送到在发出请求的 dyno 上运行的客户端,而不是全部(哪个套接字.io-redis 和 RedisToGo 应该照顾)。
任何想法将不胜感激!
node.js - 在 Heroku 上的 NodeJS 中创建两个 Redis To Go 客户端时出错
我在使用 NodeJS 构建的 Heroku 应用程序上运行了一个 Web dyno,它使用 Nano(免费)层上的单个 Redis To Go 数据库。该层应该最多支持十个连接,但是如果我尝试使用以下两个不同的模块连接到它:
尝试启动应用程序时出现此错误:
错误:就绪检查失败:需要 NOAUTH 身份验证。3 月 31 日 21:52:18 <> app/web.1: 在 RedisClient.on_info_cmd (/app/node_modules/redis/index.js:380:35)
REDISTOGO_URL
环境变量设置正确,如果我从其中一个模块中删除代码,那么它可以正常启动,没有错误。我可以创建一个客户端并将其传递给每个模块,但我真的更愿意了解这里实际导致问题的原因。
有人可以解释发生了什么吗?
python - 如何从redis获取客户端地址?
我正在 Heroku 中测试 Redis。我有一个简单的烧瓶应用程序,可以创建 redis 客户端并杀死客户端,但是......
问题是如何获取 addr ?我知道一种取名字的方法redis.client_getname()
...
heroku - Heroku 中 Redis Cloud 中的 BROKER_URL
我在 Heroku 上使用 Redis,我在尝试 RedisToGo 和 Redis Cloud,我需要获取数据库的 URL 以将其放入BROKER_URL
我的 django 应用程序的设置中。RedisToGo 清楚地为我提供了仪表板中的 URL,但 Redis Cloud 没有。有人知道如何获得吗?
ruby-on-rails - 错误重复键值违反唯一约束“index_users_on_email”可能使用redis清理heroku上缓存的已删除记录
我在 rails 控制台中删除了一条用户记录,当我尝试使用已删除用户的电子邮件添加用户时,它仍然会引发 uniq 密钥冲突。
我觉得 Heroku 上的 Redis To Go 可能已经缓存了该用户(我对缓存不是很熟悉),这就是为什么当我执行 find_by(email:"email@email.com") 或当我做 User.all 时。
我相信它可能会留在缓存中?如果是这样,我该如何清除该缓存?
我正在使用 Rails 4、heroku、postgres、Redis To Go
ruby-on-rails - Heroku Redis 无法打开连接
我遵循 Ryan Bates 教程 ActionController Live,并在 heroku 部署应用程序。一切正常,除了事件,Ryan 对我们应该重新打开 redis 连接感到难过,而我做不到。我使用 RedisToGo 在 heroku 上执行 redis。这是我的事件控制器操作:
这里还有redis初始化程序:
有人能帮我吗?
编辑
我只需使用初始化客户端Redis.new(url: ENV["REDISTOGO_URL"])
而不是在事件控制器操作中解析 URI 即可完成所有工作。
heroku - Heroku 错误:ArgumentError:无效的 uri 方案''
我正在尝试让我的 Rails 应用程序使用 Sidekiq 处理后台作业,并将 Sidekiq 与 Heroku 上的 redis-to-go 连接起来。这是我的Procfile
:
这是我的Sidekiq.rb
初始化程序文件:
该REDIS_PROVIDER
变量REDISTOGO_URL
在 Heroku 中设置为。根据此处提供的说明,我还添加了一个初始化程序文件redis.rb
。以下是内容:
我收到以下错误,不知道如何解决。Heroku 也抛出了 H10 错误
更新:
我在 Heroku 上回滚到以前的版本并从 gemfile 中删除了 redis gem,删除了 redis 初始化文件,应用程序不再崩溃。但是后台作业仍然无法正常工作,并且我在日志中收到这些错误:
为什么系统不接受导致worker崩溃的config参数?
无效uri方案的错误仍然存在:
sidekiq.yml 文件
:超时:8
生产::并发:25 暂存::并发:10
ruby-on-rails - Heroku、Rails、Resque、Redis:所有作业都因 Errno::ETIMEDOUT 而失败
我在 heroku 上有一个 rails 应用程序,它使用 Resque.enqueu 来安排使用 Redis 和 redistogo 的后台作业。
工作过去正常工作,但我现在注意到它们都失败了一段时间(几周,100% 的工作)。
我得到的错误:
异常 Errno::ETIMEDOUT 错误连接超时 - 连接 (2)
和堆栈跟踪:
我在想这可能与没有正确连接到 Redis 或 redistogo 有关。这是我拥有的相关初始化程序代码:
resque.rb:
redis_connection.rb:
如果我在我的应用程序中调用 Resque.redis 或 @connection,它会返回一个 Redis 实例。还有什么会导致此连接错误?我可以在哪里进行故障排除?
python - Heroku 上的 RQScheduler
我正在尝试使用 RedisToGo 在 Heroku 上使用 django-rq 运行 rqscheduler。我已经按照他们的自述文件( https://github.com/ui/django-rq)中的描述实现了 django-rq 。
我有一个启动 rqworker 的工作人员,以及另一个使用自述文件中建议的管理命令启动 rqscheduler 的工作人员。rqworker 成功启动,但我在使用 rqscheduler 时一直遇到此错误:
在我的设置中,我的 Redis 队列有以下配置:
我在我的 Procfile 中有这个:
关于为什么会发生这种情况的任何想法?