2017-05-30 4 views
1

これは変です。私は自分のLinuxサーバ(aws ec2)上のsupervisordに関連するすべての既存のプロセスを強制終了しましたが、キューに入れられたジョブはまだ処理/作業中です。スーパーバイザを実行しなくても、キュージョブは処理され続けます

ps -feでプロセスを確認しましたが、スーパーバイザの実行プロセスが見つかりませんでした。

何が起こっているか教えてもらえますか?前もって感謝します。

+0

.envファイルではどのキュードライバを使用していますか?同期、データベース、redis? – lewis4u

+0

キュードライバを 'sync'に設定すると、ジョブをキューに送信せずにすぐに実行できます。 .envファイルを更新したとしても、古い設定がキャッシュされている可能性があります。 'php artisan config:clear'を実行して、アプリケーションが正しいキュードライバを使用していることを確認します。 – Sandeesh

+0

@ lewis4u私はデータベースドライバ –

答えて

1

この問題を要約すると、スーパーバイザがキューイングを担当するためには、キュードライバを.envファイルのQUEUE_DRIVER=databaseまたはQUEUE_DRIVER=redisに設定してください。

キュードライバがQUEUE_DRIVER=syncに設定されている場合、すべてのジョブは1つずつ処理され、スーパーバイザはまったく重要ではなく、インストールする必要はありません。

1

キュードライバをsyncに設定すると、ジョブをキューに送信せずにすぐに実行できます。 .envファイルを更新したとしても、古い設定がキャッシュされている可能性があります。 php artisan config:clearを実行して、アプリケーションが正しいキュードライバを使用していることを確認します。

関連する問題