最近不得不对我的Sidekiq队列进行优先级排序(在我仅使用默认队列之前)。 因此,我想到了按照https://github.com/mperham/sidekiq/wiki/Advanced-Options#reserved-queues
使用保留队列config / sidekiq.yml内容:
---
:concurrency: 25
:logfile: ./log/sidekiq.log
:queues:
- default
- mailers
config / sidekiq_critical.yml内容:
---
:concurrency: 10
:logfile: ./log/sidekiq.log
:queues:
- critical
在开发环境中, 我可以使用以下不同的配置文件启动2个端实例
sidekiq -C config/sidekiq.yml
sidekiq -C config/sidekiq_critical.yml
我可以在sidekiq ui中看到两个具有不同队列的sidekiq实例
我不知道如何在生产环境中运行类似的方法。 对于生产,我们使用与https://github.com/mperham/sidekiq/tree/master/examples/upstart
中提到的类似sidekiq.conf内容
script
exec /bin/bash <<'EOT'
sudo -i -u ec2-deploy
cd path/to/app
RAILS_ENV=production bundle exec sidekiq -C config/sidekiq.yml
RAILS_ENV=production bundle exec sidekiq -C config/sidekiq_critical.yml
EOT
end script
但是我只能看到sidekiq的一个实例正在运行 config / sidekiq.yml 队列。
请帮助如何在同一服务器上运行具有不同配置文件的两个sidekiq实例
答案 0 :(得分:2)
您将创建一个sidekiq2.conf。或sidekiq-critical.conf。或您想要的任何名称。