gpt4 book ai didi

heroku - 在 heroku 中使用 redis

转载 作者:可可西里 更新时间:2023-11-01 11:13:29 24 4
gpt4 key购买 nike

这是我第一次使用 redis,唯一的原因是因为我正在尝试 autocomplete search tutorial .该教程在开发中运行良好,但我在为 heroku 设置 redis 时遇到了问题。

我已经关注了these steps在 heroku 文档上设置 redis 但是当我运行 heroku run rake db:seed 我得到 Redis::CannotConnectError: Error connecting to Redis on 127.0.0.1:6379 (Errno::ECONNREFUSED )

我对 heroku 不是很熟悉,所以如果你们需要更多信息,请告诉我。

编辑

我已经完成了显示的初始化步骤 here当我运行 heroku config:get REDISCLOUD_URL 时,结果与我的 Heroku 设置的 config vars 部分下的 Redis Cloud URL 完全相同。

按照文档,我然后像这样设置 config/initializers/redis.rb:

if ENV["REDISCLOUD_URL"]
$redis = Redis.new(:url => ENV["REDISCLOUD_URL"])
end

只是为了检查,我尝试用 if block 内的 redis 云的实际 URL 代替 REDISCLOUD_URL 变量,但这没有用。当我尝试为 heroku 数据库播种时,我的错误消息没有改变。

最佳答案

仅仅创建一个指向安装的Redis服务器的$redis变量是不够的,你还需要告诉Soulmate这件事,否则它会默认为localhost。

来自Soulmate README你应该能够在初始化器中做这样的事情(而不是你当前的 redis.rb 初始化器,你不需要它,除非你在你的应用程序的其他地方使用 Redis):

if ENV["REDISCLOUD_URL"]
Soulmate.redis = ENV["REDISCLOUD_URL"]
end

查看 Soulmate source , 一种更简单的方法可能是将 REDIS_URL 环境变量设置为 Redis url,而不是 REDISCLOUD_URL 或与 REDISCLOUD_URL 一样,因为看起来 Soulmate 在回退之前会检查它到本地主机。

关于heroku - 在 heroku 中使用 redis,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30623462/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com