2017-06-22 15 views
0

activejobsはActiveJobsに私が持っているいくつかの質問です: Railsの同時実行性とここ

  1. は私がActiveJobs経由sidekiq上のジョブキューにジョブのn個の数をキューに入れられた事があります。私のEC2では、私は4人の労働者を持つようにプーマを設定しました。それぞれ5つのスレッドがあります。これは同時に最大20の並行ジョブが実行されることを意味しますか?各スレッドは、アイドル状態のときにキューに入れられたジョブをピックアップして処理しますか?私はこの設定を試みましたが、それはまだ一度にシリアル1のジョブでそれを処理しているようです。もっと必要な設定がありますか?

  2. 並行性について - ジョブキュー自体に取り組むために、さらに多くのEC2インスタンスを設定するにはどうすればいいですか?

  3. キュー自体について - 私たちがRails内からキューを管理/見ていく方法はありますか?または、私はサイドキックのウェブインターフェースを使ってキューを見るべきですか?

+0

プーマの設定は全くsidekiqには影響を与えません。 Sidekiqには独自の並行性設定があります。 –

答えて

1

サイドキックは良いWikiです。ご質問については: - Redisのとconsumer - Sidekiqワーカー(S)

  1. Sidekiq(および他のバックグラウンドジョブの実装)producerがあなたのRailsアプリ(s)は、Queueあるqueued jobs
    として動作します。 3つのエンティティはすべて完全に独立したアプリケーションであり、異なるサーバー上で実行できます。ですから、PumaやRailsのアプリケーションは、Sidekiqの並行性にまったく影響を与えません。
  2. Sidekiq並行処理の説明は、SOの答えをはるかに超えています。あなたは "Sidekiqの労働者を拡大縮小"することで、大規模な記事をグーグルでグーグルにすることができます要するに、別々のEC2インスタンスを実行してRedisをセットアップし、Sidekiqのワーカー数、ワーカーごとの並行性、ルビランタイム、キューの並行性と優先度などを調整することができます。
    編集:Sidekiqには、ワーカーごとの構成(通常はsidekiq.yml)があります。しかし、労働者の数は、DebianのUpstartのようなシステムツールによって管理されています。あるいは、Sidekiq Pro/Enterpriseを、多くの機能(sidekiqswarmなど)で購入することもできます。ウィキから
  3. Sidekiq API
+0

ありがとう - 私は結局間違った木を吠えていました。ウィキは助けてくれますが、まだそれに取り組んでいますが、これ以上の質問をする前に、さらに先に試してみましょう。もう一度、すべての構成がサイドキック側にあることを知っていれば、少なくとも正しい方向に私を指摘しました。 Cheers –

+0

@JoelLimはい、Sidekiqには、ワーカーごとの構成(通常はsidekiq.yml)があります。しかし、労働者の数は、DebianのUpstartのようなシステムツールによって管理されています。あるいは、Sidekiq Pro/Enterpriseを、多くの機能(sidekiqswarmなど)で購入することもできます。それがあなたを助けたら私の答えを受け入れたものとしてマークできますか? –

関連する問題