Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 西德基酒店;单队列上有多个工人的Capistrano_Ruby_Capistrano_Sidekiq - Fatal编程技术网

Ruby 西德基酒店;单队列上有多个工人的Capistrano

Ruby 西德基酒店;单队列上有多个工人的Capistrano,ruby,capistrano,sidekiq,Ruby,Capistrano,Sidekiq,我们已经让sidekiq在我们的应用程序上工作,它工作得很好,但是在本地,我有4个sidekiq工作人员,每个人使用 sidekiq -r config.rb -c 20 -q websites 我有四个队列,所以我从终点站开始 sidekiq -r config.rb -c 20 -q websites sidekiq -r config.rb -c 20 -q cafes sidekiq -r config.rb -c 20 -q gyms sidekiq -r config.rb -c

我们已经让sidekiq在我们的应用程序上工作,它工作得很好,但是在本地,我有4个sidekiq工作人员,每个人使用

sidekiq -r config.rb -c 20 -q websites
我有四个队列,所以我从终点站开始

sidekiq -r config.rb -c 20 -q websites
sidekiq -r config.rb -c 20 -q cafes
sidekiq -r config.rb -c 20 -q gyms
sidekiq -r config.rb -c 20 -q telephones
我已经查阅了sidekiq文档,但是我没有找到答案,我补充道

set :sidekiq_processes, 4
这给了我们四个过程

作为短期解决方案,我们为队列增加了优先级


我会在服务器上手动运行队列,但我不想失去capistrano与启动和停止部署的集成,我认为内置cap配方不可能做到这一点。您可以处理多个队列,也可以有多个进程,但不能自定义每个进程的队列。

这太可惜了(我想您知道)您有什么建议吗?我认为最好的办法可能是为命名队列制作自己的cap配方,然后将它们挂接到部署进程中。最简单的方法是拥有自己的启动/停止/重新启动方法,并跟踪您希望在数组或其他对象中使用的工作队列。请参阅上的内置配方