問題タブ [sidekiq]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - キュー内の内容を確認し、Sidekiq でキューをクリアするコンソール コマンドはありますか?
私は、コンソールにアクセスしてキューに何が入っているかを確認するdelayed_jobsメソッドを使用し、必要に応じてキューを簡単にクリアすることに慣れています。これに対してSidekiqに同様のコマンドはありますか? ありがとう!
ruby-on-rails - Web クローラーをバックグラウンドに移動: Resque または Sidekiq
ユーザーがクロールする URL のリスト (場合によっては 200k) を含む CSV ファイルをアップロードできるようにする Rails アプリがあります。次に、コントローラーでこのファイルの各行に移動し、URL といくつかのパラメーターを受け取る別のメソッドを呼び出します。クロール メソッドが完了したら、いくつかの変数をいくつかのモデルに保存します。以下は、私のコントローラーがどのように見えるかのようなものです:
これをバックグラウンドに移動し (このプロセスが Rails アプリ全体を保持しないようにするため)、各行のコードを非同期で実行できるようにする必要があります。すべてをキューに入れ、各行のキュー内にキューを配置するようなものを考えていました...またはそのようなもの。これにResqueまたはSidekiqを使用できると考えていましたか?もしそうなら、どこから始めるべきですか?
ruby - 開発環境でRailsサーバーを使用してSidekiqを起動する
バックグラウンドプロセスの一部に Sidekiqを使用しています。
現在私がしていることは次のとおりです。
bundle exec rails s
ある端末で開始しbundle exec sidekiq
てから別の端末で開始して、sidekiqがそれ自体を開始し、処理するジョブを探すようにします。
私が欲しいのは:
起動するとすぐにbundle exec rails s
、sidekiqも起動するはずbundle exec sidekiq
です。どうすれば開発環境だけに統合できますか?
ruby-on-rails - Sidekiqワーカーがトリガーされない
私はバックグラウンドの仕事にSidekiqを使用しています:
ワーカーアプリ/workers/data_import_worker.rbがあります
ファイルlib/parse_excel.rbから呼び出されます
アクションからトリガーするとすぐに、ワーカーは呼び出されません。Redisはで実行されていますlocalhost:6379
なぜこれが起こっているに違いないのか考えてみてください。環境はLinuxです。
ruby-on-rails - Sidekiq-Email.delay.sendMail
だから、私はこのコードを持っています
コマンドの実行(コンソールから)
でも動作します
動作せず、文字列を返します。
これをデバッグするにはどうすればよいですか?redisを見ると、3つのキーがありますが、いずれにも値がないようです。
ヘルプ?
ruby - Sidekiq、Capistrano、Sinatra をデプロイに使用する
Sinatra を使用した capistrano デプロイの一部として:
sidekiq/issues/10 に従って-r (require) が私の Sinatra を指すようにする方法がとにかくわかりません。アプリは ./app/nodes.rb にあります。
私のconfig.ruは
「./app/nodes」は、nodes と sidekiq の両方を実行する必要があるすべての環境にロードします。
sidekiq /capistrano.rbには、現在 -r フラグを渡すオプションはありません。
sidekiq.log は、予想どおり次のエラーを報告します。
何か案は?
Ⅴ
ruby - Sidekiq ワーカーは Resque より遅い
私は実稼働中の resque システムと一緒に sidekiq を試しています。これはリンゴとオレンジの比較ではないことはわかっていますが、heroku ワーカーで実行されている resque ジョブが完了するまでに約 4 秒かかります。sidekiq を使用して Amazon ラージ インスタンスで 50 スレッドしか実行していませんが、同じジョブに平均で約 18 秒かかります。仕事はサードパーティの API の使用が非常に多いため、私のボトルネックはネットワーク接続だけであると想定していますが、sidekiq をより適切に構成する方法について提案があるかどうかを知りたかっただけです。
ruby - Ruby のマルチスレッド システム コール
sidekiq を使用して一部の処理をキューに送信するシステムがあります。これらのプロセスは、画像を操作するプログラムに対してシステム コールを実行することで構成されます。このプログラムのパフォーマンスは非常に悪いです。システムを「トップ」にすると、ほとんどすべての CPU が Ruby によって消費され、イメージ ソフトウェアによってわずかな CPU が消費されます。
5、10、20、30 人のワーカーでテストしようとしました。ワーカーを追加しても処理パフォーマンスは向上しません (値が大きいとさらに悪化します)。
私の労働者は次のようなものです:
Ruby でマルチスレッド システム コールを改善する方法はありますか?
ruby-on-rails - sidekiqは例外通知メールを送信しません
失敗したときにsidekiqからメールを送信できるようにするにはどうすればよいですか?現在、例外通知機能が機能していることはわかっていますが、sidekiqジョブが失敗しても、何も実行されません。
ruby-on-rails-3 - ファイルアップロードレールアプリherokuのバックグラウンドジョブを正しく使用する方法
私は、アップロードされたファイルをユーザーから取得してボックスにプッシュするRailsアプリに取り組んでいます。問題は、API呼び出しに時間がかかりすぎるため、一部のリクエストでこれがタイムアウトになることです。このプロセスをワーカープロセスに移動したいのですが、ユーザーがファイルをアップロードしてからワーカーがジョブをキューから削除するまでの間にファイルを永続化する方法がわかりません。私が見たすべての例は、この部分をスキップするか、s3ではないAPIの使用を扱っていないようです。ファイルをデータベースに保存することを考えましたが、ボックスAPIは、ファイルの内容だけでなく、ファイルオブジェクト(curl -F @file)を想定しています。これがどのように達成されるかについての指針はありますか?パフォーマンス上の理由からsidekiqを使用したいと思っていますが、delayed_jobも問題ありません。