我不熟悉Sidekiq的内部机制,想知道是否可以使用相同的配置启动多个Sidekiq实例(处理相同的队列)。
是否可能有2个或更多的Sidekiq实例从同一队列中处理相同的消息?
更新:
我需要知道在多台机器上运行Sidekiq时是否可能存在冲突。
我不熟悉Sidekiq的内部机制,想知道是否可以使用相同的配置启动多个Sidekiq实例(处理相同的队列)。
是否可能有2个或更多的Sidekiq实例从同一队列中处理相同的消息?
更新:
我需要知道在多台机器上运行Sidekiq时是否可能存在冲突。
是的,Sidekiq 绝对可以在同一个队列上运行多个进程。Redis 将只会将消息随机分配给其中的一个进程。
不,我已在不同的机器上运行了Sidekiqs,并没有任何问题。
每个Sidekiq都从同一个redis服务器读取数据,而且在多线程和分布式场景下,redis非常强大。
此外,如果您查看Sidekiq的Web界面,它会显示所有机器上的所有Worker,因为所有工作线程都登录到同一个redis服务器。
所以,没有问题。