問題タブ [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.

0 投票する
0 に答える
575 参照

ruby - sidekiq でアクティブなレコード オブジェクトを作成する

sidekiq でアクティブなレコード オブジェクトを作成したいと考えています。オブジェクト全体をシリアル化する必要があるため、ベストプラクティスではないことはわかっていますが、この場合、他に選択肢はありません。

試してみると、次のようになります。

エラーは次のように述べています: WARN: undefined method `primary_key' for Hash:Class

このメソッドで作成されたオブジェクト (この場合はイベント):

Trackメソッドは次のようになります。

クラスEventTrackingWorker:

注:文字列をアクティブなレコード クラスにevent.to_s.classify.constantize.new(options).send(method)変換し、オプションを指定して呼び出します。その後、オブジェクトを作成しますshift_created_eventShiftCreatedEventnew.send(method)

誰かがそれを経験していますか?

0 投票する
1 に答える
3533 参照

ruby-on-rails - Sidekiqを使用してファイルのアップロードをバックグラウンドにプッシュする方法は?

私は、大きな音楽ファイルをアップロードできるRailsアプリに取り組んでいます。これらをバックグラウンドでアップロードして、アップロードを開始すると、ユーザーがトラック名やアーティストなどのファイルに関するメタデータを入力しているときに、sidekiqワーカーに移動されるようにします。

このrailscastをフォローして、画像処理をバックグラウンドに移動することができました: http ://railscasts.com/episodes/383-uploading-to-amazon-s3?view=asciicast

しかし、ファイルの実際のアップロードをバックグラウンドに移動する方法を完全に理解することはできません。使用すべき特定のコールバックまたはSidekiqメソッドはありますか?

このようなことを行う方法に関するリソースはありますか?

これが私の曲のモデルです: https ://gist.github.com/leemcalilly/5001583

私の曲のコントローラー: https ://gist.github.com/leemcalilly/5001590

私のアップロードフォーム: https ://gist.github.com/leemcalilly/5001586

私のアップローダー(s3へのcarrierwave_directでcarrierwaveを使用): https ://gist.github.com/leemcalilly/5001601

そのコードはs3にアップロードするために機能しますが、ファイルのアップロード中、ブラウザーはRailsプロセスで拘束されます。それをバックグラウンドプロセスに移したいと思います。そこにあるsidekiqコードは、実際には画像処理を処理するRailscastからのものだと思いますが、そのRailscastで画像処理が機能している理由はよくわかりません。

正しい方向に向けられる助けがあれば大歓迎です。

0 投票する
1 に答える
3210 参照

ruby-on-rails - Carrierwaveバックグラウンダーsidekiq労働者なし

sidekiqおよびsidekiqwebとともに、carrierwaveバックグラウンダーをローカルにセットアップしました。エンキューされたsidekiqにジョブが追加されているのを確認できますが、実行されていません。それらが実行されるのを妨げるものは何ですか?

セットアップ:Rails 3.2.11 Unicorn 4.6.1 Sidekiq 2.7.5carrierwave 0.8.0carrierwave_backgrounder0.2.0

バックグラウンダーの構成。

モデル

アップローダー

ここに画像の説明を入力してください

登録済みの労働者をチェックすると空に戻ります

config / sidekiq.yml

config / initializer / sidekiq.rb

私はいくつかの方法でコマンドラインからsidekiqを開始しました

お手伝いありがとう :)

0 投票する
1 に答える
735 参照

ruby-on-rails-3 - sidekiq true god.rb は私のワーカーを実行しません。ターミナルからの同じコマンドはどこで実行されますか?

God.rb を実行して Sidekiq を起動および監視しても、これは機能しません。sidekiqの私の神の設定の下。

sidekiq -C /srv/books/current/config/sidekiq.yml を実稼働環境でターミナルから手動で実行すると正常に動作しますが、sidekiq god.rb の設定では、なぜこれが発生する可能性があるのでしょうか? ログには何もありません。

0 投票する
3 に答える
562 参照

ruby-on-rails - Sidekiq UIがアセットをロードしない(Rails 3)

RailsアプリでSidekiqを使用していますが、UIを機能させるのに問題があります。

http :// servername/sidekiqsinatraアプリにアクセスするとロードされますが、次のようになります:http: //cl.ly/NHBT

ログのエラーは次のとおりです。

Started GET "/sidekiq/javascripts/application.js" for 127.0.0.1 at 2013-03-01 11:32:48 -0700

NoMethodError (undefined method empty?' for #<Rack::File:0x007faf004527c8>): bullet (4.3.0) lib/bullet/rack.rb:31:inempty?' bullet (4.3.0) lib/bullet/rack.rb:12:in call' warden (1.2.1) lib/warden/manager.rb:35:inblock in call' warden (1.2.1) lib/warden/manager.rb:34:in catch' warden (1.2.1) lib/warden/manager.rb:34:incall' actionpack (3.2.8) lib/action_dispatch/middleware/best_standards_support.rb:17:in call' rack (1.4.5) lib/rack/etag.rb:23:incall' rack (1.4.5) lib/rack/conditionalget.rb:25:in `call'

何か案は?ありがとう!

0 投票する
0 に答える
212 参照

ruby-on-rails-3 - Rails と MongoID Web アプリケーションはデータを保存できません

私は、mongoID を介して mongo db にデータを保存する digitalocean でホストされている ruby​​ on rails webapp を持っています。

sidekiq ワーカーの共通 A​​PI を介してデータをインポートしていますが、次のようなオブジェクトを作成しようとしています。

このデータは開発時にローカルに保存できますが、本番環境ではランダムな動作になります。たとえば、1000 個の消費をインポートすると、Web アプリはおそらく 20 個しか保存せず、問題を報告するログはありません。

この問題はsidekiqに関連していると思った(ローカルでも問題なく動作する)ので、resqueのような別のものに切り替えましたが、問題は残りました。保存されたオブジェクトの検証を確認すると、「保存」後にすべて有効になります。

これは、mongodb への接続に関するトランザクションまたは問題に関連している可能性がありますか?

0 投票する
2 に答える
4687 参照

ruby - sidekiq が接続されている redis ポートとインスタンスを確認するにはどうすればよいですか?

私は sidekiq と redis を使用しています。いくつかの問題を見つけてデバッグしようとしていますが、そのために、sidekiq が接続している URL を知りたいです。サーバーとクライアントを設定したファイルで確認できることはわかっていますが、alaResque.redisを使用して、どの redis インスタンス sidekiq が接続されているかを示す機能はありますか?

前もって感謝します!

0 投票する
1 に答える
351 参照

ruby-on-rails - 読み取りの影響を最小限に抑えながら、バックグラウンド ジョブを介してデータベースを INSERT/UPDATE

Sidekiq を使用して外部ソースからレコードを更新し、PostgreSQL サーバーで多数のバックグラウンド タスクを実行しています。しかし、バックグラウンド プロセスから書き込みを開始するたびにSELECTs、Web アプリの速度が低下します。

読み取りのブロックを回避するための最善の戦略は何ですか?

0 投票する
1 に答える
2519 参照

ruby-on-rails - Sidekiqのdelayed_extensionsを使用する場合の未定義のメソッド

Sidekiq の遅延拡張機能を使用すると、bundle exec sidekiqシェルで次のエラーが発生します。

私のコントローラーで:

私のモデルでは:

どんな助けでもいただければ幸いです

0 投票する
3 に答える
24793 参照

ruby-on-rails - 複数環境用のSidekiq構成

複数のソースを見て、さまざまなシナリオを試しましたが、これを解決できなかったため、問題が発生しました。私を正しい方向に向けてください。

みんなと同じように、私には 3 つの環境 (開発、ステージング、および運用) があります。

sidekiq.yml ファイルに次のものがあります

これで、コマンドでsidekiqを開始したときに期待していました

構成ファイルからすべての値を取得し、適切なキューと log/sidekiq.log のログ ファイルを使用して sidekiq を開始しますが、それは機能しません。Sidekiq は起動しますが、使用する環境に関係なく、stg_xyz_tests_queue、stg_default_xyz_queue、および stg_xyz_default_queue のみを作成します。

私が試した他のアプローチは、 config/environments/development.rb で次のコードを使用することでした

これにより、キューは正常に作成されますが、ログファイルは作成または書き込まれず、3 つの環境すべてでこのコードを複製する必要があります。

私のセットアップで sidekiq をシームレスに動作させる最良の方法は何ですか?事前に助けてくれてありがとう!!!