ruby-on-rails - 错误 : heartbeat: Connection lost (ECONNRESET) in sidekiq

标签 ruby-on-rails redis ruby-on-rails-5 sidekiq

我正在尝试在 Rails 5.2 上运行 Sidekiq 5.2.2,但我总是收到连接丢失错误。以下是我的服务器日志:

# bundle exec sidekiq -q v2_default,2 -q v2_low -e production
TID-2yed0 INFO: Booting Sidekiq 5.2.2 with redis options {:url=>"redis://myserver.lmf979.0001.apse1.cache.amazonaws.com:6379/1", :network_timeout=>7, :id=>"Sidekiq-server-PID-3644"}
TID-2yed0 INFO: Running in ruby 2.3.5p376 (2017-09-14 revision 59905) [x86_64-linux]
TID-2yed0 INFO: See LICENSE and the LGPL-3.0 for licensing details.
TID-2yed0 INFO: Upgrade to Sidekiq Pro for more features and support: http://sidekiq.org
TID-2yed0 INFO: Starting processing, hit Ctrl-C to stop
TID-19spa0 ERROR: heartbeat: Connection lost (ECONNRESET)
TID-xhh1g ERROR: Error fetching job: READONLY You can't write against a read only slave.
TID-xhh1g WARN: Redis::CommandError: READONLY You can't write against a read only slave.
TID-xhh1g WARN: /usr/local/rvm/gems/ruby-2.3.5/gems/redis-4.0.2/lib/redis/client.rb:119:in `call'

这是我的 config/initializers/sidekiq.rb

Sidekiq.configure_server do |config|
    config.redis = { url: 'redis://myserver.lmf979.0001.apse1.cache.amazonaws.com:6379/1', network_timeout: 7 }
end

Sidekiq.configure_client do |config|
    config.redis = { url: 'redis://myserver.lmf979.0001.apse1.cache.amazonaws.com:6379/1', network_timeout: 7 }
end

我验证了我可以和服务器进行ping PONG,但我不知道为什么sidekiq无法连接。

# rails c production
Running via Spring preloader in process 7372
Loading production environment (Rails 5.2.1)
2.3.5 :001 > require "redis"
 => false 
2.3.5 :002 > redis = Redis.new(url: 'redis://myserver.lmf979.0001.apse1.cache.amazonaws.com:6379/1')
 => #<Redis client v4.0.2 for redis://myserver.lmf979.0001.apse1.cache.amazonaws.com:6379/1> 
2.3.5 :003 > redis.ping
 => "PONG" 
2.3.5 :004 > 

有什么想法吗?

最佳答案

我只是指向 AWS 中错误的 redis 端点。感谢 Pavel Mikhailyuk 指出。

关于ruby-on-rails - 错误 : heartbeat: Connection lost (ECONNRESET) in sidekiq,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53312212/

相关文章:

ruby-on-rails - 在 Rails 中支持时区

ruby-on-rails - Travis CI hstore 不存在错误

ruby-on-rails - Rails 中的上下文绑定(bind)

ruby-on-rails - 如何禁用belongs_to的default_scope?

ruby-on-rails - 如何计算下一个月的周年纪念日

redis - 使用 StackExchange.Redis 连接到 redis 失败后事务不工作

sql - Rails has_many through 查询,有两个引用,也就是使用 through table 属性

redis - ZF2中如何实现自定义认证存储类?

redis zrank : Floating-Point Numbers May Lose Precision

sql - 如何按 ruby​​ 中字符串的整数值排序?