我在同一个VPS上托管了两个rails应用程序。我正在使用sidekiq进行后台处理。我为每个应用程序运行两个单独的sidekiq守护进程,问题是有时(不确定何时),来自一个应用程序的作业由第二个应用程序的sidekiq守护进程处理,这会产生一些不希望的行为和异常。
可以在同一台机器上运行多个sidekiq实例(没有任何故障)吗?如果是这样,你能指出我的任何资源,这将解释如何正确地做到这一点?我找不到任何相关内容。
答案 0 :(得分:5)
您可以使用sidekiq命名空间来解决此问题。来自sidekiq的wiki
NOTE: The :namespace parameter is optional, but recommended if Sidekiq is sharing access to a Redis database.
您可以做的另一件事是为工人设置一个单独的队列。
:queues:
- [default, 1]
- [new_comments, 1]
- [email_alerts, 1]
- [new_messages, 1]