Rumah >pembangunan bahagian belakang >tutorial php >Tugas bermasa dan teknologi tugas terancang dalam PHP
Dengan perkembangan pesat Internet, semakin banyak laman web dan aplikasi perlu melaksanakan beberapa tugas yang dijadualkan dan tugas yang dirancang di latar belakang, seperti pembersihan data, sandaran, analisis statistik, dsb. Sebagai bahasa pembangunan web yang popular, PHP juga menyediakan tugas berjadual dan teknologi tugas terancang yang sepadan Artikel ini akan memperkenalkan tugas berjadual dan teknologi tugas terancang dalam PHP secara terperinci.
1. Konsep dan senario penggunaan tugas berjadual
1.1 Konsep
Tugas berjadual merujuk kepada melaksanakan beberapa tugasan atau tugasan tertentu secara automatik dalam titik masa atau selang masa tertentu .
1.2 Senario Penggunaan
Dalam pembangunan web, selalunya perlu melakukan beberapa tugas latar belakang yang tidak perlu diperhatikan oleh pengguna Contohnya, mengira lawatan tapak web setiap bulan, Sandaran setiap hari pangkalan data, dsb. Masa pelaksanaan dan kekerapan tugasan ini agak tetap, dan kita boleh melaksanakan fungsi ini melalui tugasan yang dijadualkan.
2. Teknologi tugas berjadual dalam PHP
PHP menyediakan pelbagai cara untuk melaksanakan tugas berjadual. Kedua-dua kaedah berdasarkan Crontab dan berdasarkan perpustakaan pihak ketiga diperkenalkan di bawah.
2.1 Melaksanakan tugas berjadual berdasarkan Crontab
Crontab ialah alat yang digunakan untuk melaksanakan tugas secara kerap dalam sistem Linux/Unix Melaluinya, kami boleh melaksanakan tugas berjadual. Langkah pelaksanaan khusus adalah seperti berikut:
Langkah 1: Edit jadual crontab
Buka jadual crontab melalui cron -e dan tambah tugas berjadual yang sepadan, contohnya:
0 1 * /usr/bin/php /home/yourusername/cron.php
Laksanakan fail /home/yourusername/cron.php pada 1 pagi setiap hari.
Langkah 2: Mulakan semula perkhidmatan cron
$ sudo /etc/init.d/cron restart
Dengan cara ini, tugas yang dijadualkan disediakan.
2.2 Tugas berjadual berdasarkan perpustakaan pihak ketiga
Selain Crontab, terdapat juga beberapa perpustakaan pihak ketiga yang boleh digunakan untuk melaksanakan tugas berjadual. Perpustakaan ini biasanya menyediakan API yang lebih mudah dan sesuai untuk tugas yang lebih kompleks. Pustaka yang biasa digunakan termasuk yang berikut:
2.2.1 Komponen Symfony/Console
Komponen Symfony/Console ialah komponen dalam rangka kerja Symfony yang digunakan untuk mengendalikan tugas baris arahan. Untuk menyelesaikan tugas, anda perlu menulis kelas Perintah dahulu, dan kemudian menambah, mengedit, melaksanakan dan operasi lain melalui alat baris arahan komponen Symfony/Console.
2.2.2 Komponen Laravel/Jadual
Komponen Laravel/Jadual ialah perpustakaan pengurusan tugas berjadual yang disediakan oleh rangka kerja Laravel Ia menyediakan API yang ringkas dan mudah digunakan untuk melaksanakan pelbagai jadual tugasan, menyokong pelbagai strategi perancangan seperti titik masa dan selang masa.
2.2.3 Komponen EasyTask
EasyTask ialah komponen pengurusan tugas berjadual PHP yang dibangunkan oleh orang Cina Ia mudah dan mudah digunakan, menyokong pelbagai strategi perancangan seperti titik masa dan selang masa. dan mempunyai kepraktisan yang tinggi.
3. Konsep dan senario penggunaan tugas berjadual
3.1 Konsep
Tugas yang dirancang merujuk kepada melaksanakan beberapa tugas atau operasi tertentu secara automatik pada masa tertentu pada masa hadapan. Tidak seperti tugas berjadual, tugas berjadual biasanya perlu dilaksanakan selepas tempoh masa tertentu, yang mungkin beberapa hari atau minggu.
3.2 Senario Penggunaan
Senario penggunaan tugas yang dijadualkan juga agak meluas. Sebagai contoh, dalam platform e-dagang, jika pengguna membeli item, transaksi perlu disahkan dan dihantar dalam masa yang ditetapkan Proses ini boleh diselesaikan secara automatik melalui tugasan yang dijadualkan.
4. Teknologi tugas berjadual dalam PHP
Teknologi tugas berjadual dalam PHP biasanya dilaksanakan melalui CRON. CRON membenarkan kami melaksanakan tugasan tertentu pada masa tertentu atau selang waktu tertentu, termasuk melaksanakan tugas pada jam tertentu pada hari tertentu atau hari tertentu dalam bulan tertentu, atau melaksanakan tugas secara kitaran dalam selang masa tertentu. Berikut menerangkan cara menggunakan CRON untuk melaksanakan tugas yang dijadualkan.
4.1 Edit skrip tugas berjadual
Sama seperti tugas berjadual, kita perlu menulis skrip tugas berjadual khusus mengikut peraturan CRON. Skrip biasanya terdiri daripada kod PHP dan dijalankan secara automatik bila-bila masa ia perlu dilaksanakan.
Sebagai contoh, jika kita ingin melaksanakan tugas pada pukul 12 setiap malam, kita boleh mengedit skrip PHP dan menamakannya planned_task.php Kodnya adalah seperti berikut:
< ;?php
/ / Kod yang perlu dilaksanakan
gema "Ini adalah tugas yang dirancang!";
?>
4.2 Konfigurasikan CRON
Seterusnya kita perlu mengkonfigurasi masa pelaksanaan skrip melalui CRON . Masukkan arahan berikut dalam terminal:
crontab -e
akan membuka editor teks dan masukkan peraturan tugas berjadual berikut:
0 0 * /usr/bin/php /var/www/html/planned_task.php
Peraturan di atas bermakna skrip PHP /var/www/html/planned_task.php dilaksanakan pada 0:00 setiap hari.
Selepas menyimpan dan menutup editor, CRON akan menyemak tugasan yang dijadualkan pada selang waktu yang dijadualkan. Jika terdapat tugasan yang perlu dilaksanakan, ia akan dilaksanakan mengikut peraturan yang dijadualkan.
4. Ringkasan
PHP menyediakan pelbagai cara untuk melaksanakan tugas berjadual dan tugasan yang dirancang Antaranya, kaedah berdasarkan Crontab boleh memenuhi tugas berjadual yang paling mudah, dan kaedah berdasarkan ketiga -perpustakaan parti Ia lebih sesuai untuk tugas yang kompleks dan pelbagai. Apabila menggunakan teknologi ini, kita perlu memilih pelaksanaan yang paling sesuai berdasarkan keperluan perniagaan tertentu.
Atas ialah kandungan terperinci Tugas bermasa dan teknologi tugas terancang dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!