Nav*_*ori 4 optimization performance ruby-on-rails sidekiq sidekiq-monitor
我有一个要求,我应该能够每秒运行 100 个 sidekiq 作业。我将服务器容量增加到 8 个 CPU 并创建了 4 个 sidekiq 进程,但它仍然每分钟服务 50 个作业。我不确定我在哪里
我得到了这个问题的解决方案,因此回答了我的问题。
我正在使用 sidekiq 4。根据 sidekiq 文档,这个版本的 sidekiq 能够每秒运行 800 个作业。
所以我刚刚写了一个没有逻辑的虚拟工人并创造了大约 10 万个工作岗位。这些作业以每秒 666 个作业的速度运行。
所以我得出的结论是,影响性能的不是 sidekiq 配置,而是我的工作逻辑需要更多时间来执行工作。
我开始优化 sidekiq 工作逻辑并减少其执行时间。它对我有用
现在我可以每秒为 1 个 sidekiq 进程运行 30 个作业。如果我们增加 sidekiq 进程,那么每秒的作业数量也会增加。
这就像(每秒作业数)*(sidekiq 进程数)。
最后,始终创建轻量级工作者,显着提高 sidekiq 性能然后去增加服务器容量
| 归档时间: |
|
| 查看次数: |
718 次 |
| 最近记录: |