以下是我在ActiveJobs上的一些问题:
说我已经通过ActiveJobs在sidekiq上的作业队列中排队了多个作业。在我的EC2上,我设置puma有4个工人,每个工作5个线程。这是否意味着最多可同时运行20个并发作业?当每个线程空闲并且只是处理它时,它们是否会获取排队的作业?我尝试了这个设置,但似乎它仍然是串行处理 - 一次一个作业。我需要做更多设置吗?
关于并发性 - 我如何才能设置更多的EC2实例来解决作业队列本身?
关于队列本身 - 我们有办法从Rails中管理/查看队列吗?或者我应该依靠sidekiq的网络界面来查看队列?
答案 0 :(得分:1)
Sidekiq有良好的Wiki。至于你的问题:
producer
是您的Rails应用程序,Queue
- Redis和consumer
- Sidekiq工作人员。这三个实体都是完全独立的应用程序,可以在不同的服务器上运行。因此,Puma和Rails应用程序都不会影响Sidekiq的并发性。