我目前正在 2 Heroku dynos 上运行我的应用程序。到目前为止,我需要添加类似于 config/unicorn.rb 的内容:
worker_processes 3
timeout 30
@resque_pid = nil
before_fork do |server, worker|
@resque_pid ||= spawn("bundle exec rake " + \
"resque:work QUEUES=scrape,geocode,distance,mailer")
end
我有几个不同的后台作业要处理,有些需要单线程运行,有些需要同时运行。这种配置的问题在于,在两个 Unicorn 实例上,它将产生完全相同的 resque worker(相同的队列等)。
如果我可以更改每个 worker 进程的队列类型,或者甚至让一个实例运行 resque worker 而另一个实例运行 sidekiq worker,这将大大简化一切。
这可能吗?