Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Linux kerap melaksanakan skrip tugas permulaan PHP (analisis langkah)

Linux kerap melaksanakan skrip tugas permulaan PHP (analisis langkah)

铁手
铁手asal
2022-08-12 20:53:451658semak imbas

Baru-baru ini, saya menghadapi situasi di mana saya perlu memulakan semula perkhidmatan PHP dari semasa ke semasa di tempat kerja, jadi saya terfikir untuk menggunakan skrip pelaksanaan berjadual untuk memulakan semula proses PHP, jadi saya menggunakan Linux untuk menulis skrip pelaksanaan langkah-langkah adalah seperti berikut:

Bab Langkah pertama: Buat fail skrip berjadual cron.sh (nama fail berakhir dengan .sh sesuka hati).

Kod rujukan adalah seperti berikut (log.txt ialah fail log untuk melihat kandungan output yang mudah):

echo "supervisorctl restart..." >> /var/www/html/log.txt
start_time=$(date)
echo $start_time >> /var/www/html/log.txt
echo >> /var/www/html/log.txt
supervisorctl restart all
end_time=$(date)
echo "supervisorctl end" >> /var/www/html/log.txt
echo $end_time >> /var/www/html/log.txt
echo >> /var/www/html/log.txt

Saya menggunakan supervisorctl untuk menguruskan proses php di sini (untuk kegunaan daripada supervisorctl, anda boleh menyemak Dokumen rasmi), sudah tentu kaedah lain juga boleh digunakan.

Berikut ialah contoh untuk menggambarkan secara ringkas penggunaan supervisorctl.

Mula-mula anda perlu memasang supervisorctl, laksanakan yum install -y supervisor di terminal,

supervisorct dipasang dalam direktori /etc/supervisor secara lalai

Selepas selesai , dalam /etc Terdapat fail konfigurasi supervisord.conf di bawah laluan /supervisor Selepas membukanya, terdapat [include] di hujung dan konfigurasikan fail seperti berikut:

files = /etc/supervisor/conf.d/*.conf

Kemudian ia boleh. berada dalam direktori /etc/supervisor/conf.d Cipta fail konfigurasi anda sendiri; kandungan fail dikonfigurasikan seperti berikut:

[program:rabbitmq-comsumer-1]
process_name=%(program_name)s_1
command=php /var/www/html/app/artisan rabbitmq:consumer 1
autostart=true
autorestart=true
user=root
numprocs=1
redirect_stderr=true
stdout_logfile=/var/www/html/app/storage/logs/rabbitmq-comsumer-log-1.log
Langkah 2:

Seterusnya, tulis kandungan tugas yang dijadualkan, masukkan vim /etc/crontab dalam konsol terminal dan tekan Enter; kod berikut dalam fail:

Nota: 0 */2 * * * (Ini ialah sintaks pelaksanaan tugas berjadual. Saya melaksanakannya setiap 2 jam, iaitu 0:00, 2: 00,...dilaksanakan secara automatik; sila rujuk Baidu untuk sintaks yang berkaitan)
0 */2 * * * root  /var/www/html/cron.sh

Langkah 3:

Simpan fail dan kemudian lakukannya (langkah ini sangat penting!) Laksanakan arahan berikut:

Akhir sekali, anda boleh menggunakan arahan berikut untuk melihat hasil yang diubah suai Jika anda melihat 0 */2 * * * root /var/www/html/cron.sh bermakna ia mempunyai berkuat kuasa:
crontab /ect/crontab

crontab -l
Ringkasan:

Di atas adalah menggunakan skrip tugas pelaksanaan berjadual linux untuk memulakan semula php Selagi perkhidmatan tidak memerlukan pelaksanaan segera, tidak perlu secara manual laksanakan arahan sekali dan untuk semua. Untuk kandungan yang lebih menarik, sila beri perhatian kepada artikel lain yang berkaitan di laman web php Cina!

Atas ialah kandungan terperinci Linux kerap melaksanakan skrip tugas permulaan PHP (analisis langkah). 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