gpt4 book ai didi

ruby-on-rails - SocketError at/sidekiq/getaddrinfo : nodename nor servname provided, 或未知

转载 作者:IT王子 更新时间:2023-10-29 06:09:46 25 4
gpt4 key购买 nike

我是 Rails 开发新手,正在构建连接到 redis + sidekiq 的应用程序。我一定有一些配置错误,但我不确定到底是什么。下面,我将在这里写下让我感到困惑的地方:

在运行 rails s 时,出现以下错误:

2016-07-09 08:55:46 - SocketError - getaddrinfo: nodename nor servname provided, or not known:
/Users/rohitrekhi/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/redis-3.3.0/lib/redis/connection/ruby.rb:177:in `getaddrinfo'
/Users/rohitrekhi/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/redis-3.3.0/lib/redis/connection/ruby.rb:177:in `connect'
/Users/rohitrekhi/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/redis-3.3.0/lib/redis/connection/ruby.rb:260:in `connect'
/Users/rohitrekhi/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/redis-3.3.0/lib/redis/client.rb:336:in `establish_connection'

所以我想一定是redis连接错误。当我 ping redis 以查看连接是否通过时,它显示以下内容:

$ redis-cli ping
=> PONG

因此,如果 redis 连接成功,可能是 Sidekiq 问题?

我通过 Sinatra 实现了 Sidekiq web 界面,当我尝试查看它时出现以下错误:

SocketError at /sidekiq/
getaddrinfo: nodename nor servname provided, or not known

所以现在我猜测错误实际上是通过 Sidekiq 造成的,但我不确定我通过主机/服务器/套接字上的配置将球丢在哪里。任何想法到底是什么导致了这个,如果它是 Sidekiq 或 redis 的错误?

这是我在 config/initializers/sidekiq.rb 中的 sidekiq 初始化文件:

Sidekiq.configure_server do |config|
config.redis = { url: 'redis://redis.example.com:6379/12', network_timeout: 5 }
end

Sidekiq.configure_client do |config|
config.redis = { url: 'redis://redis.example.com:6379/12', network_timeout: 5 }
end

这是我的 config/initializer/redis.rb:

$redis = Redis.new(:host => 'localhost', :port => 6379)

我还打开了三个终端窗口,打开了 redis 服务器、sidekiq 和我的 rails 服务器。

提前致谢!

最佳答案

这是没有意义的:

redis://redis.example.com:6379/12

您在该 URL 上没有 Redis 服务器;修复 URL。

关于ruby-on-rails - SocketError at/sidekiq/getaddrinfo : nodename nor servname provided, 或未知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38282619/

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