您正在连接到 Redis v3.0.504,Sidekiq 需要 Redis v4.0.0 或更高版本

You are connecting to Redis v3.0.504, Sidekiq requires Redis v4.0.0 or greater

Redis 服务器是 运行

错误

sidekiq 不在我们 windows 机器上的项目中 运行。请帮助解决这些错误!

$ bundle exec sidekiq

2020-04-14T12:44:56.654Z pid=12528 tid=59f1k INFO: Booting Sidekiq 6.0.6 with redis options {:url=>"redis://localhost:6379/0", :id=>"Sidekiq-server-PID-12528"}
2020-04-14T12:45:03.044Z pid=12528 tid=59f1k INFO: Booted Rails 6.0.2.2 application in development environment
Signal TTIN not supported
Signal TSTP not supported
Signal USR2 not supported
2020-04-14T12:45:03.044Z pid=12528 tid=59f1k INFO: Running in ruby 2.6.1p33 (2019-01-30 revision 66950) [i386-mingw32]
2020-04-14T12:45:03.045Z pid=12528 tid=59f1k INFO: See LICENSE and the LGPL-3.0 for licensing details.
2020-04-14T12:45:03.045Z pid=12528 tid=59f1k INFO: Upgrade to Sidekiq Pro for more features and support: http://sidekiq.org
You are connecting to Redis v3.0.504, Sidekiq requires Redis v4.0.0 or greater
C:/Ruby26/lib/ruby/gems/2.6.0/gems/sidekiq-6.0.6/lib/sidekiq/cli.rb:62:in `run'
C:/Ruby26/lib/ruby/gems/2.6.0/gems/sidekiq-6.0.6/bin/sidekiq:12:in `<top (required)>'
C:/Ruby26/bin/sidekiq:23:in `load'
C:/Ruby26/bin/sidekiq:23:in `<main>'

正如错误消息告诉您的那样:您正在连接到一个 redis v3.x 实例,但是您的 sidekiq 版本需要一个 redis v4 实例,因此您需要以某种方式将它们排列起来。这给您留下了两个选择:

  1. 将 sidekiq 降级到可与 redis 一起使用的版本 v3.x
  2. 将 redis 升级到 v4.x 以便能够使用您当前尝试使用的 sidekiq 版本

如果您选择第一个选项,sidekiq 5.2.8 应该可以根据自述文件运行 (https://github.com/mperham/sidekiq/tree/v5.2.8)。只需更新 Gemfile 中的 sidekiq 版本,然后 运行 bundle update.

gem 'sidekiq', '~> 5.2.8'

如果您选择第二个选项,那么...这取决于 OS,但您需要安装 redis v3。