Laravelで失敗したキュージョブの試行の間に遅延を作成するにはどうすればよいですか?

市民

Laravelでキューに入れられたジョブがありますが、負荷が高いために外部APIが失敗するために失敗することがあります。問題は、私の選択は、Laravelキューが成功するまでAPIをリクエストでハンマーで叩き続けるか、X回のリクエストの後に停止するように指示することであるように見えることです。

ジョブがどのように失敗したかに基づいて、ハンマーで叩き続けるのではなく、5分後に再試行するように指示する方法はありますか?

組み込みのキューハンドラーを使用したいのですが、実際の障害シナリオを処理するように再試行機能が構築されていないようです。仕事に失敗する理由の多くは、すぐにやり直しても解決できないと思います。

Roj Vroemen

あなたができることはこのようなものです:

// app/Jobs/ExampleJob.php
namespace App\Jobs;

class ExampleJob extends Job
{
    use \Illuminate\Queue\InteractsWithQueue;

    public function handle()
    {
        try {
            // Do stuff that might fail
        } catch(AnException $e) {
            // Example where you might want to retry

            if ($this->attempts() < 3) {
                $delayInSeconds = 5 * 60;
                $this->release($delayInSeconds);
            }
        } catch(AnotherException $e) {
            // Example where you don't want to retry
            $this->delete();
        }
    }
}

例外を除いてこれを行う必要はないことに注意してください。アクションの結果を確認して、そこから決定することもできます。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ActiveJobとSidekiqで失敗したジョブの再試行カウンターを制限するにはどうすればよいですか?

分類Dev

Laravel:Redisキュージョブを失敗させるにはどうすればよいですか?

分類Dev

メソッドのキュー(遅延)を作成するにはどうすればよいですか?

分類Dev

Laravel 5.2でジョブを時間遅延させるにはどうすればよいですか?

分類Dev

Laravelキュージョブが失敗した理由について詳しく知るにはどうすればよいですか?

分類Dev

Laravelの失敗したジョブJSONをうまくデコードするにはどうすればよいですか?

分類Dev

遅延のあるオブザーバブルを作成するにはどうすればよいですか

分類Dev

Laravelでジョブキューの処理を変更するにはどうすればよいですか?

分類Dev

Sparkジョブの失敗時の再試行回数を制限するにはどうすればよいですか?

分類Dev

Sparkジョブの失敗時の再試行回数を制限するにはどうすればよいですか?

分類Dev

Sparkジョブの失敗時の再試行回数を制限するにはどうすればよいですか?

分類Dev

Javaで、コード行を特定の順序で実行し、その間に遅延を設けるにはどうすればよいですか?

分類Dev

Railsのパブリケーションページ間の遅延をスケジュールしてトリガーするにはどうすればよいですか?

分類Dev

Zabbixで失敗したrsyncジョブを監視するにはどうすればよいですか?

分類Dev

Airflowでキャッチアップジョブの「スケジュールされた時間」を取得するにはどうすればよいですか?

分類Dev

失敗したSSHログイン試行を追跡するにはどうすればよいですか?

分類Dev

失敗したテストを再試行するにはどうすればよいですか?

分類Dev

失敗したSSHログイン試行を追跡するにはどうすればよいですか?

分類Dev

別のモジュールでApp Engine Go SDK遅延パッケージを実行するにはどうすればよいですか?

分類Dev

JavaScriptで遅延のある無限ループを作成するにはどうすればよいですか?

分類Dev

DataFactoryジョブの実行または失敗後に通知を送信するにはどうすればよいですか?

分類Dev

コンピューターがスリープ状態またはオフの場合でも、失敗したバックアップジョブまたは欠落したバックアップジョブをキューに入れるにはどうすればよいですか?

分類Dev

コンピューターがスリープ状態またはオフの場合でも、失敗したバックアップジョブまたは欠落したバックアップジョブをキューに入れるにはどうすればよいですか?

分類Dev

ジョブが終了した後、Jenkinsジョブが待機キューにある時間を知るにはどうすればよいですか?

分類Dev

Aeroピークの遅延時間を変更するにはどうすればよいですか?

分類Dev

Sidekiqジョブの失敗をテストするにはどうすればよいですか?

分類Dev

Jenkinsパイプラインで失敗したステージの再試行オプションを実装するにはどうすればよいですか?

分類Dev

Javascriptゲームのキーダウン遅延を修正するにはどうすればよいですか?

分類Dev

LibreOffice Calcで行をマージし、以前の行のテキスト間に改行を作成するにはどうすればよいですか?

Related 関連記事

  1. 1

    ActiveJobとSidekiqで失敗したジョブの再試行カウンターを制限するにはどうすればよいですか?

  2. 2

    Laravel:Redisキュージョブを失敗させるにはどうすればよいですか?

  3. 3

    メソッドのキュー(遅延)を作成するにはどうすればよいですか?

  4. 4

    Laravel 5.2でジョブを時間遅延させるにはどうすればよいですか?

  5. 5

    Laravelキュージョブが失敗した理由について詳しく知るにはどうすればよいですか?

  6. 6

    Laravelの失敗したジョブJSONをうまくデコードするにはどうすればよいですか?

  7. 7

    遅延のあるオブザーバブルを作成するにはどうすればよいですか

  8. 8

    Laravelでジョブキューの処理を変更するにはどうすればよいですか?

  9. 9

    Sparkジョブの失敗時の再試行回数を制限するにはどうすればよいですか?

  10. 10

    Sparkジョブの失敗時の再試行回数を制限するにはどうすればよいですか?

  11. 11

    Sparkジョブの失敗時の再試行回数を制限するにはどうすればよいですか?

  12. 12

    Javaで、コード行を特定の順序で実行し、その間に遅延を設けるにはどうすればよいですか?

  13. 13

    Railsのパブリケーションページ間の遅延をスケジュールしてトリガーするにはどうすればよいですか?

  14. 14

    Zabbixで失敗したrsyncジョブを監視するにはどうすればよいですか?

  15. 15

    Airflowでキャッチアップジョブの「スケジュールされた時間」を取得するにはどうすればよいですか?

  16. 16

    失敗したSSHログイン試行を追跡するにはどうすればよいですか?

  17. 17

    失敗したテストを再試行するにはどうすればよいですか?

  18. 18

    失敗したSSHログイン試行を追跡するにはどうすればよいですか?

  19. 19

    別のモジュールでApp Engine Go SDK遅延パッケージを実行するにはどうすればよいですか?

  20. 20

    JavaScriptで遅延のある無限ループを作成するにはどうすればよいですか?

  21. 21

    DataFactoryジョブの実行または失敗後に通知を送信するにはどうすればよいですか?

  22. 22

    コンピューターがスリープ状態またはオフの場合でも、失敗したバックアップジョブまたは欠落したバックアップジョブをキューに入れるにはどうすればよいですか?

  23. 23

    コンピューターがスリープ状態またはオフの場合でも、失敗したバックアップジョブまたは欠落したバックアップジョブをキューに入れるにはどうすればよいですか?

  24. 24

    ジョブが終了した後、Jenkinsジョブが待機キューにある時間を知るにはどうすればよいですか?

  25. 25

    Aeroピークの遅延時間を変更するにはどうすればよいですか?

  26. 26

    Sidekiqジョブの失敗をテストするにはどうすればよいですか?

  27. 27

    Jenkinsパイプラインで失敗したステージの再試行オプションを実装するにはどうすればよいですか?

  28. 28

    Javascriptゲームのキーダウン遅延を修正するにはどうすればよいですか?

  29. 29

    LibreOffice Calcで行をマージし、以前の行のテキスト間に改行を作成するにはどうすればよいですか?

ホットタグ

アーカイブ