Laravel実践記

laravelでjobファイルを変更しても反映されない

laravelのjobファイルを新規・変更等しても自動で反映されない

laravelのqueueを使用して非同期で処理をさせたい場合、jobファイルを制作したり、既にあるjobファイルに手を加えたりしますが、laravelでは変更された内容は自動的には変更は反映されないです。

jobファイルはキャッシュされている

なぜ、自動で反映されないか?
答えはjobファイルはキャッシュされているからです。
もう少し詳しく解説しますと、laravelでjobを動かす際、queueを使用するのですが、queueをスタートした際に、jobがキャッシュされる仕組みになっており、実際のjobファイルを更新してもキャッシュされているファイルは更新されないためです。

どうすれば反映される?

上記でqueueスタート時にjobがキャッシュされると紹介しました。
キャッシュされているjobを再度読み直してキャッシュさせれば良いだけです。
では、どうすればjobを再度読み直してキャッシュさせることができるのかといえば、

 command
php artisan queue:restart

とartisanコマンドを打って、queueを再起動してやることによって、jobを再度読み直してキャッシュさせれば、更新したファイルの内容が反映されます。

-Laravel実践記

© 2024 Laravel World