【发布时间】:2019-07-30 13:42:30
【问题描述】:
我有一个 Rails 应用程序,它根据域名使用不同的数据库(即它支持多个网站)。这通过加载不同的环境来工作,没有问题。
我正在尝试弄清楚如何为每个人运行相同的 Sidekiq 作业集。
Sidekiq 在工作服务器实例上运行。
我尝试在 worker 的命令行上运行第二个 sidekiq 实例,为其提供不同的 pidfile、日志文件、环境和配置文件。
问题 1:在仪表板中,sidekiq 配置文件的第一个实例中列出的所有重复任务都消失了,recurring jobs 选项卡上只有我的第二个实例配置文件中的任务。
问题 2:对于那个工作,如果我尝试将它排入队列,我会得到 unitialized constant uninitialized constant JofProductUpdateLive -> 我猜这是因为我在 worker 上的 app/jobs/jof_product_update_live.rb 中定义了该类,并且它正在主服务器上寻找它?
问题 3:如果我的错误理论是正确的,并且我将该文件放在主服务器上,在我看来它将使用 environment/db1 运行,而我不确定如何使用 db2/environment2 运行它?
我正在寻求有关如何设置这样的东西的任何建议,因为我已经尝试了我遇到的每一个想法,但到目前为止,成功率为零。我还梳理了可以在 sidekiq 上找到的每个论坛,但无济于事。
感谢您的帮助!
【问题讨论】: