【问题标题】:Sidekiq - Processes or threads? Whats most effective?Sidekiq - 进程或线程?什么最有效?
【发布时间】:2016-09-22 06:31:20
【问题描述】:

我在 DO 上有一个 20 核心液滴。我有一个创建图像的 rake 任务。使用回形针/imagemagick 转换图像。我添加了使用delayed_job 的paperclip_delayed,并添加了Sidekiq 作为后台工作人员。

所以使用 sidekiq 我可以添加额外的工作线程或设置多个线程。

在性能方面什么是最好的?拥有少量进程并添加大量线程会更好,反之亦然?或者只要我不超过核心数量就没有关系?

【问题讨论】:

    标签: ruby-on-rails multithreading background-process sidekiq


    【解决方案1】:

    “Worker”是一个模糊的术语:使用进程或线程。

    对于图像处理,您的限制因素可能是磁盘 I/O,除非您在该 droplet 上有一些出色的 SSD。线程将您限制为单个内核,除非图像处理例程正在使用mini_magick 之类的东西。如果是这种情况,一个具有 25 个线程的进程就足够了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-09-17
      • 1970-01-01
      • 2011-07-07
      • 2011-03-20
      • 2015-04-30
      • 1970-01-01
      相关资源
      最近更新 更多