問題タブ [resque]

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 投票する
1 に答える
126 参照

ruby-on-rails - BJ 同時実行を処理する簡単な方法はありますか

BJ でジョブを設定し、特定の「タイプ」の 2 つが同時に実行されないようにする方法はありますか?

私たちは 24 のユニコーンを実行しており、それらのそれぞれに対して BJ を起動できます。バックグラウンド タスクをノックアウトする複数のジョブ ハンドラーが好きなので、これは大したことではありません。例外はデータのインポートです。これらを一度に複数実行しないように指示できるようにしたいと考えています。

これはBJで可能ですか、それともresqueのようなものに移行する必要がありますか?

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

ruby-on-rails - バックグラウンドワーカーを使用してレコードを保存するには?

5 MB を超えるビデオ ファイルをサーバーに保存するとします。このファイルを保存するためのバックグラウンド ジョブを作成する必要がありますか?

これはどのように行うべきですか?ビデオ モデルには、タイトル、説明、および添付列/フィールドがあります。全て必須項目です。

def create では、「if @video.save」を実行する代わりに、 「if Resque.enqueue(Save, @video)」のようなことを行う必要がありますか?

Resque.enqueue() に引数を渡すとハッシュに変わるため、これがどのように行われるのか正確にはわかりません。次に、" "if Resque.enqueue(Save, @video)" " を使用すると、true または false が期待されます。ただし、Resque.enqueue は何も返すことができません。それとも私が間違っていますか?

ボタンラインです。resque + redisでバックグラウンドワーカーを使用してレコードを保存する適切な方法は何ですか?

理想的には、次のように見えるはずだと考えていました。

あなたの考えは何ですか?

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

ruby-on-rails - resqueはどのようにしてキューからジョブを削除しますか?

Railsアプリにresqueキューイングシステムを実装しました。エンキューからキューから削除されるまでのresqueジョブのフローを知りたい。

従来のワークフローとgemから使用されるメソッドは、
1。Resqueがジョブをキューに入れる(Resque :: Job.create)、
2。ジョブがクラスの「perform」メソッドを呼び出す(Resque :: Job.perform)、および
3。 Resqueはキューからジョブを削除します。

手順3で使用した方法を見つけるためにgemをデバッグしましたが、見つかりませんでした。メソッドResque::Job.destroy、Resque :: Job.dequeueは、デバッグしたとおり、このタスクを担当していません。キューからジョブを削除するために使用する方法を教えてもらえますか

明示的にジョブを削除したくないことに注意してください。キューからジョブを削除する一般的なresqueメソッドが必要です。

前もって感謝します。

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

ruby-on-rails - RailsのResqueですべてのジョブに使用するデフォルトのキューを指定するにはどうすればよいですか?

特に指定がない限り、すべてのエンキュー呼び出しをデフォルトで特定のキューに設定して、DRYで保守しやすくしたいと思います。キューを指定するために、ドキュメントには、クラス内で変数@queue=Xを定義すると記載されています。それで、私は次のことを試みましたが、うまくいきませんでした、何かアイデアはありますか?

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

rspec - ResqueとRspecの例を使用してテストをブリッジする方法は?

Rspecの例と並行してResqueを実装しているときに、混乱しました。以下は、高価なメソッド.generate(self) クラスSomeClass ... ChangeGenerator.generate(self)...endを持つクラスです。

resqueを実装した後、上記のクラスを次のように変更し、ChangeRecorderJobクラスを追加しました。

それは完璧に動作します。しかし、私には2つの懸念があります。

以前、私のサンプル仕様は、.generate(self)メソッドのスタック全体をテストするために使用されていました。しかし、これをResqueの仕事に取り入れたので、例をブリッジして、分離せずに同じテストをグリーンにする方法を教えてください。または、テストを分離する必要がありますか?

最後に、エンキューするジョブが10個ある場合、メソッドを使用して10個の個別のジョブクラスを作成する必要がありますself.performか?

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

ruby-on-rails - 「rails server」コマンドで必要な追加サービス (resque、redis) を起動します

次の場合、Rails の開発環境で redis と resque を (場合によっては他のプロジェクト、mongod、mysql-server などで) 自動的に開始するようにしたいと考えています。

  • 開発サーバーの起動時rails server

さらに、次のケースで既に実行中のサービスが検出され、実行されていない場合はサービスも開始されると便利です。

  • テストを実行するときは rspec、rspec /spec をレーキします。
  • 起動時はrails console.

をシャットダウンするときrails serverは、開始された子サービスもシャットダウンする必要があります。

このような追加の起動スクリプトの正しい場所はどこですか?

そして、それらが本番環境でも開始されるのを回避するにはどうすればよいですか (/etc/init.d サービスを通じてすべてを実行します)

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

sinatra - resqueワーカーの負荷分散が公平ではない

投稿メッセージをデータベースに保存するActiveRecordに裏打ちされたResqueジョブがあります。7つのワーカーインスタンスを実行します。sinatraアプリケーションに20Kレコードを送信します。redisデータベースにクエリを実行すると、次の結果が表示されます...

誰かコメントしてもらえますか?7人の労働者のうち4人は、生涯でそれぞれ1つの仕事しか処理しませんでした

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

ruby-on-rails-3 - Resque Web インターフェイスの読み込みエラー

このチュートリアルを使用して、Rails 3 に Resque をインストールしました。

問題は、Resque Web インターフェイスを使用しようとしたときです。に行くと{localhost}/resque/、ブラウザは{localhost}/resque/resque/overview/true/false本質的に存在しない にリダイレクトされます。ただし{localhost}/resque/overview、リンクが壊れていますが、正しいインターフェイスを開くようです。(統計をもう一度クリックすると{localhost}/resque/resque/stats/resque/true/false、再び存在しない にリダイレクトされます)

ここに私のconfig.ruファイルがあります:

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

file-descriptor - resque-webのエラー:コンソールを参照するファイル記述子を取得できませんでした

resque-webを起動しようとしていますが、次のエラーが発生します。

このエラーはUbuntu10.04および10.10で発生しました。

Resque Webは-Fオプションでのみ開始します(デーモン化せず、フォアグラウンドで実行します)。したがって、プロセスがデーモン化されるとき、それは何かでなければなりません。

任意のアイデア、どうすればそれを解決できますか?

よろしく、

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

ruby-on-rails - Resqueを機能させることができません

私は自分のプロジェクトでResqueを機能させようとしていますが、残念ながら、何らかの理由でResqueがRedisに書き込むことができないようです。

Redisは正しく構成されているようです。私は、redis-cliに接続してコマンドを発行でき、Rails3.0.5アプリ内で構成されているようにポート6379で実行されます。何かをResqueエンキューしようとすると、ジョブはキューに入れられますが、Redisで実際に何かが発生しているようには見えません(Redisログ内で0クライアントが接続されています)。コンソールを再起動すると、キューが空になり、ワーカーが実行されていません。

すべてが静かに失敗します。Railsログには何もありません。コンソールにも何もありません。ワーカーを起動しても何もありません。(明らかに)実行するジョブが見つかりません。

https://gist.github.com/867620

これを修正またはデバッグする方法に関する提案はありますか?