Rumah >rangka kerja php >Laravel >Adakah tugas berjadual laravel perlu menggunakan cron?

Adakah tugas berjadual laravel perlu menggunakan cron?

WBOY
WBOYasal
2022-06-02 16:42:582116semak imbas

Tugas berjadual Laravel perlu menggunakan cron; jika anda mahu melaksanakan semua tugas laravel secara kerap dalam laravel, anda perlu menambah entri cron pada pelayan dan menambah "jadual projek phppath/artisan:run... " Kod itu cukup.

Adakah tugas berjadual laravel perlu menggunakan cron?

Persekitaran pengendalian artikel ini: sistem linux7.3, Laravel versi 5.4, komputer Dell G3.

Adakah tugas berjadual laravel perlu menggunakan cron?

Laravel mempunyai fungsi yang sangat berkuasa Anda hanya perlu menambah entri cron pada pelayan untuk melaksanakan semua tugasan laravel dengan kerap.

Sekarang kita mempunyai jadual data berikut:

Adakah tugas berjadual laravel perlu menggunakan cron?

Saya mahu nilai medan cron dalam jadual cron meningkat sebanyak 1 setiap minit , maka saya perlu seperti berikut Langkah:

1 Tulis kod laravel dalam AppConsoleKernel.php

protected function schedule(Schedule $schedule)
{
    $schedule->call(function () {
                    DB::table('cron')->increment('cron');
                })->everyMinute();
 }

2. Tambah kod dalam fail /var/spool/cron/root perkhidmatan

Nota: Sebaik-baiknya gunakan editor vim untuk mengedit fail di sini Jika anda menggunakan winscp untuk mengedit fail, akan ada masalah untuk tidak melaksanakan tugas.

Masukkan

crontab -e

pada baris arahan dan tambah kod berikut

* * * * * /usr/local/php/bin/php /data/wwwroot/test/artisan schedule:run 1>> /dev/null 2>&1

Enter

crontab -u root -l

Adakah tugas berjadual laravel perlu menggunakan cron?

pada baris arahan

Tidak perlu memulakan semula perkhidmatan cron kerana sistem akan membaca fail dalam direktori /var/spool/cron setiap minit.

Jika anda mendapati ia masih tidak boleh dilaksanakan mengikut konfigurasi berikut, anda boleh menggunakan kaedah berikut untuk menyelesaikan masalah:

Semak sama ada arahan menggunakan laluan mutlak, contohnya, gunakan /usr/local/php/bin/ di sini php bukannya php, gunakan /data/wwwroot/test/artisan dan bukannya artisan.

Jika laluan mutlak digunakan dan ia masih tidak dilaksanakan, maka terus masukkan /usr/local/php/bin/php /data/wwwroot/test/artisan schedule:run 1>> baris arahan /null 2>&1, lihat jika ia dilaksanakan jika ia tidak dilaksanakan, ia adalah masalah dengan kod laravel Jika ia dilaksanakan, ia bermakna ia adalah masalah pembolehubah persekitaran. Jika anda tidak tahu di mana php berada, masukkan php pada baris arahan, anda akan digesa di mana php dipasang.

[Cadangan berkaitan: tutorial video laravel]

Atas ialah kandungan terperinci Adakah tugas berjadual laravel perlu menggunakan cron?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn