問題タブ [delayed-job]
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 - Delayed_Job と Active Record に関する Rails の問題
API から Twitter ユーザーのデータを取得するために Delayed_Job を使用していますが、何らかの理由でモデルに保存されていません。助けてください!(以下のコード)
終わり
明確にするために、実際にはエラーは発生していません。保存していないだけです。私のログは次のようになります。
ありがとう!
ruby-on-rails - delay_job が drb サーバー経由で act_as_ferret と通信すると、クローズド ストリーム エラーが発生する
私はdelayed_job
いくつかのファイルを処理し、結果でいくつかのアクティブレコードオブジェクトを作成するために使用しています。acts_as_ferret
drb サーバーとして実行されているアクティブ レコード オブジェクトのインデックスが作成されています。がdelayed_job
ジョブを処理すると、アクティブなレコードが drb サーバー経由で ferret と通信しようとする時点に到達するまで、すべてがうまくいきます。
スタック トレースはこちら: http://pastie.org/693588
コンソール経由またはコンソールなしで同じプロセスを呼び出すと、delayed_job
成功します。私の推測では、何らかの理由で、おそらくパーミッションに関連delayed_job
して、drb サーバーと通信する機能がありませんが、確かではありません。何が起こっているのですか?
ruby-on-rails - 起動時にdelayed_jobを開始します
capistranoでdelayed_jobを使用していますが、「script /delayd_jobstart」を使用してWebアプリケーションの起動時にdelayed_jobを開始する方法が必要です。このようにして、capistranoはデプロイ時に再起動できます。サーバーが再起動した場合、delayed_jobsはプロジェクトで起動するはずです。
これどうやってするの?環境ファイルでこれを行うことを検討する必要がありますか、それとも初期化子として検討する必要がありますか?
ruby-on-rails - Rails アプリ内からdelayed_jobワーカーを開始および停止できますか?
私は、delayed_job といくつかのバックグラウンド処理の恩恵を受けることができるアプリを手に入れました。問題は、私は本当にdelayed_jobワーカーを常に実行する必要がない/したくないということです。
アプリは、共有ホスティング環境と複数の場所 (異なるユーザー用) で実行されます。さらに、アプリは大量に使用されません。
特定のアクション/イベントの後でのみ、アプリから (スクリプトまたは rake タスクを使用して) ジョブの処理を開始および停止する方法はありますか?
ruby-on-rails - resque ワーカーを本番環境にデプロイする方法は?
GitHub 関係者は最近、Redis を使用するバックグラウンド処理アプリをリリースしました: http://github.com/defunkt/resque http://github.com/blog/542-introducing-resque
ローカルで動作していますが、本番環境で動作させるのに苦労しています。誰か持っていますか:
- ワーカーをデプロイする Capistrano レシピ (ワーカー数の制御、再起動など)
- メインアプリが実行されている場所からマシンを分離するためにワーカーをデプロイしました。ここではどのような設定が必要でしたか?
- サーバーで再起動しても生き残るためにredisを取得しました(cronに入れてみましたが、うまくいきませんでした)
- resque-web (同社の優れた監視アプリ) をデプロイにどのように取り入れましたか?
ありがとう!
PSこれについてGithubに問題を投稿しましたが、まだ応答がありません。私は展開の経験があまりないので、SOの達人がこれを手伝ってくれることを願っています。ありがとうございました!
ruby-on-rails - モデル内で動作する遅延ジョブの取得
ドキュメントを表すモデルがあり、タイトル、作成者などは Web テーブルからスクレイピングされますが、時間とリソースを大量に消費する PDF からコンテンツを取得する必要があります。これは、delayed_jobs を使用する論理的な場所のように思えますが、常に失敗するため、不足している制限や GCE があるかどうか疑問に思っています
上記のコードは変更なしで機能します。遅延ジョブにより、ダイレクト メソッド呼び出しを send_later 呼び出しに置き換えて続行できると思いました
このコードは常にジョブに失敗し、モデルの一部であるプライベート メソッドへのアクセスについて不平を言います。たとえば、PDF をダウンロードするには URL が必要です。任意のポインタをいただければ幸いです。
追加した:
メソッドの定義 (link と summary は、Document モデルのデータベースに基づく属性です)
エラーメッセージ
ruby-on-rails - メインの Rails アプリとは別に、delayed_job のログ レベルを変更することは可能ですか?
DEBUG
ステージング サーバーで Rails アプリのログ レベルを使用したいのですが、 delayed_job
( SELECT
10 秒ごとにメインの Rails ログにステートメントを記録する) レベルでログを記録したいので、これらのステートメントをINFO
取得しません。delayed_job
SELECT
そこで。
これは可能ですか?
ruby-on-rails - delayd_job-最新ではないコードを実行しますか?
私はsite5.com共有ホスティングでdelayed_job(tobiとcollective_ideaの両方を試しました)を使用しており、乗客をレール環境として使用しています。私はなんとか仕事を成し遂げることができた。ただし、プラグインは最初の実行後にジョブクラスのソースコードの変更を無視しているようです。変更のたびにサーバーを再起動しましたが(touch tmp/restart.txt
)、それでも無視されます。
例:
ファイル:lib/xx_job.rb
単純なコントローラーでは、次のように呼び出します。
私が集めた結論:
- xx_job.rbをxx_job1.rbに変更した場合-コントローラーのエラー
- クラスXxJobをクラスXxJob1に変更した場合-コントローラーのエラー
- すべてのperformメソッドのコンテンツを削除すると、古いコードの古いコードが実行されます
- クラスを含む新しい.rbファイルを実行し、このクラスをエンキューします-完全に機能します
- その新しいファイルの実行および実行ジョブで何かを変更すると、古いコードが実行されます
すべての変更の間に、サーバーを再起動しました。Passengerまたは他の何かがクラスキャッシュを保存しているようです。
このキャッシュを削除するにはどうすればよいですか?サーバーのどこかに保存されていますか?(共有ホスティングからアクセスできるといいのですが)
ありがとう!