我用的是

bundle exec shoryuken -R -C config/shoryuken.yml

而shoryuken.yml是
concurrency: 25
delay: 0
queues:
- [development_high,  30]
- [development_mid,   6]
- [development_low,   2]

这很管用。但是,我想使用特定于环境的队列,例如在生产中使用production_high
我确保这些队列存在于
config/initializers/aws.rb使用
%w(low mid high).each do |q|
  sqs.create_queue(queue_name: Rails.env + '_' + q)
end

最佳答案

我通常在开发中使用特定的配置。
对于开发中的队列,我强烈建议为每个开发人员创建一个用户(IAM),对于资源shoryuken.dev.yml,使用the needed permissions,然后在config"arn:aws:sqs:::${aws:username}-*"中创建。
如果您使用的是activejob,请查看- [<%= aws_user_name %>_queue_name, 1]选项。可能是另一种选择。
最后,也可以在运行时添加队列,检查this

08-07 20:07