Ciri-ciri:
Beberapa ciri penting cakrawala Laravel disebutkan di bawah:
- Ia adalah pakej sumber terbuka
- Ia menunjukkan semua barisan dan maklumat pekerjaan menggunakan papan pemuka yang indah.
- Ini memberikan informasi tentang pekerjaan tertunda, pekerjaan selesai, dan pekerjaan gagal.
- Ia menyediakan maklumat giliran dan tugas menggunakan metrik.
- Ia memantau pekerjaan dengan menggunakan tag.
Perintah Horizon:
Beberapa perintah cakrawala disebutkan di bawah untuk mengawal cakrawala berjalan.
Perintah berikut digunakan untuk menjeda proses cakrawala.
$ php artisan cakrawala: berhenti seketikaPerintah berikut digunakan untuk menyambung semula proses cakrawala yang dijeda.
$ php artisan cakrawala: teruskanPerintah berikut digunakan untuk memeriksa status semasa proses cakrawala.
$ php artisan cakrawala: statusPerintah berikut digunakan untuk menghentikan proses cakrawala. Cakrawala akan berakhir setelah menyelesaikan semua pekerjaan yang sedang berjalan.
$ php artisan cakrawala: menamatkanPasang Horizon:
Prasyarat:
Anda harus memasang projek baru menggunakan Laravel versi terbaru sebelum memulakan langkah memasang cakrawala. Langkah-langkahnya ditunjukkan di sini dengan menggunakan Laravel 8.x.
Proses Pemasangan:
Jalankan arahan berikut dari terminal untuk memasang pakej cakrawala menggunakan komposer.
$ komposer memerlukan laravel / cakrawalaSelepas memasang Horizon, terbitkan asetnya menggunakan cakrawala: pasang perintah artisan:
$ php artisan cakrawala: pasangpredis pakej digunakan dalam tutorial ini untuk menggunakan predis sebagai pelanggan Redis . Jalankan arahan berikut untuk memasang pakej predis menggunakan komposer.
$ komposer memerlukan predis / predisbuka pangkalan data.php fail yang terletak di bawah konfigurasi folder dan tetapkan nilai pelanggan seperti yang ditunjukkan di bawah.
'client' => env ('REDIS_CLIENT', 'predis'),Jalankan arahan berikut untuk membersihkan cache sebelum memulakan cakrawala.
cache artisan $ php: kosongkanJalankan arahan berikut untuk memulakan cakrawala.
cakrawala artisan $ phpOutput berikut akan muncul jika cakrawala dipasang dan berfungsi dengan baik.
Konfigurasi berdasarkan kod:
Ini memberi peluang untuk berkolaborasi dengan mudah dengan ahli pasukan projek ketika bekerja dengan barisan. Jenis tetapan yang berbeza dapat diatur dengan menggunakan antrian: perintah artisan kerja. config / cakrawala.fail konfigurasi php digunakan untuk menetapkan konfigurasi yang berbeza. Buka cakrawala.php fail untuk memeriksa tetapan lalai. The Konfigurasi Pekerja Beratur bahagian fail ini mengandungi tetapan berikut.
'lalai' => ['penyelia-1' => [
'sambungan' => 'redis',
'queue' => ['lalai'],
'baki' => 'automatik',
'maxProcesses' => 1,
'mencuba' => 1,
'bagus' => 0,
],
],
'persekitaran' => [
'produksi' => [
'penyelia-1' => [
'maxProcesses' => 10,
'balanceMaxShift' => 1,
'balanceCooldown' => 3,
],
],
'tempatan' => [
'penyelia-1' => [
'maxProcesses' => 3,
],
],
],
Di sini, nilai baki dapat sederhana atau kereta atau batal. Bila sederhana diatur untuk keseimbangan maka proses akan berpecah antara dua barisan. Bila kereta ditetapkan untuk keseimbangan maka ia mengimbangkan pekerja giliran berdasarkan baki pekerjaan dan rata-rata masa menunggu. Sekiranya ada barisan yang sibuk maka cakrawala akan mencari pekerja yang ada dan memindahkan mereka ke barisan untuk menyelesaikan tugas dengan cepat. Sekiranya pilihan baki ditetapkan untuk batal maka penyelia akan menggunakan satu kumpulan pekerja untuk memproses pekerjaan yang sedang berjalan. Seorang penyelia ditentukan di sini secara lalai. Tetapi adalah mungkin untuk menetapkan beberapa pengawas dan sambungan tertentu, barisan, mekanisme pengimbangan, dll. boleh ditentukan untuk setiap penyelia.
Sekiranya anda ingin memeriksa tetapan lalai the Redis pemacu sambungan kemudian buka config /beratur.php fail. The Redis bahagian fail ini mengandungi tetapan berikut.
'redis' => ['driver' => 'redis',
'sambungan' => 'lalai',
'queue' => env ('REDIS_QUEUE', 'lalai'),
'retry_after' => 90,
'block_for' => batal,
],
Menurut tetapan, jika tidak ada pekerjaan yang ditugaskan maka status giliran akan tetap lalai. Di sini, nilai retry_after menunjukkan bahawa barisan akan dimulakan semula selepas 90 saat. Anda boleh menambah atau menurunkan nilai berdasarkan keperluan.
Buka Papan Pemuka Horizon:
Jalankan URL berikut dari penyemak imbas untuk melihat pelbagai maklumat berkaitan barisan dari papan pemuka cakrawala.
http: // localhost: 8000 / cakrawala /
Output berikut akan muncul jika cakrawala berfungsi dengan baik. Output menunjukkan bahawa cakrawala aktif sekarang, satu penyelia dan barisan lalai ditentukan dan belum ada tugas yang ditugaskan.
Ubah suai bahagian lalai dari ufuk.php fail dengan kod berikut.
'lalai' => ['penyelia-1' => [
'sambungan' => 'redis',
'queue' => ['lalai', 'e-mel'],
'timeout' => 30,
'tidur' => 3,
'baki' => 'automatik',
'minProcesses' => 1,
'maxProcesses' => 10,
'mencuba' => 1,
'bagus' => 0,
],
],
Di sini, satu lagi barisan, e-mel ditambah, masa tamat ditetapkan hingga 30 saat, tidur ditetapkan kepada 3 saat, minProses ditetapkan ke 1, dan proses maks ditetapkan kepada 10. Untuk mengaktifkan tetapan ini, anda harus menghentikan cakrawala berjalan, kosongkan cache konfigurasi, dan mulailah cakrawala lagi. Tekan ctrl + c untuk menamatkan cakrawala berjalan. Jalankan arahan berikut untuk membersihkan cache konfigurasi dan mulailah cakrawala lagi.
$ php artisan config: cachecakrawala artisan $ php
Jalankan URL berikut dari penyemak imbas sekali lagi untuk memeriksa output berdasarkan tetapan baru.
http: // localhost: 8000 / cakrawala /
Output berikut akan muncul dalam penyemak imbas berdasarkan tetapan semasa.
Kesimpulan:
Proses pemasangan dan cara menjalankan cakrawala diserlahkan terutamanya dalam tutorial ini. Anda harus membuat pekerjaan dan memberikannya ke barisan untuk mengetahui penggunaan terperinci cakrawala yang tidak diliputi dalam artikel ini. Artikel ini akan membantu pengguna Laravel untuk memasang cakrawala dan mula bekerja dengannya.