PHP Academy · Pelajaran

Konsep Baris Gilir dan Pemacu

Fahami pemprosesan tak segerak dan konfigurasikan pemacu baris gilir pangkalan data atau Redis.

Pelajaran 1 daripada 413 langkah

Konsep Baris Gilir dan Pemacu ialah pelajaran PHP Academy percuma di CoddyKit. Ini ialah pelajaran 1 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran PHP Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus PHP Academy merangkumi sejumlah 4 pelajaran.

Apakah Baris Gilir?

Baris gilir membolehkan anda menangguhkan tugas yang perlahan atau menggunakan banyak sumber (menghantar e-mel, mengubah saiz imej, mengakses API luaran) kepada pekerja latar belakang supaya respons HTTP kekal pantas.

Seni Bina Baris Gilir

Proses utama (pelayan web) menolak tugas ke dalam baris gilir. Proses pekerja yang berasingan menarik dan melaksanakan tugas secara tak segerak.

Pemacu Baris Gilir yang Tersedia

Laravel menyokong beberapa bahagian belakang baris gilir:

  • database — tugas disimpan dalam pangkalan data (sesuai untuk bermula)
  • redis — pantas dan sedia untuk produksi
  • sqs — Perkhidmatan Baris Gilir Mudah AWS
  • beanstalkd — pantas dan ringan
  • sync — dijalankan serta-merta (pembangunan setempat)

Mengkonfigurasi Pemacu Baris Gilir

Tetapkan pemacu dalam .env.

# .env
QUEUE_CONNECTION=redis
REDIS_HOST=127.0.0.1
REDIS_PORT=6379

Persediaan Pemacu Pangkalan Data

Jika menggunakan pemacu pangkalan data, cipta jadual tugas.

$ php artisan queue:table
$ php artisan migrate

Memulakan Pekerja Baris Gilir

Proses pekerja menarik dan melaksanakan tugas daripada baris gilir.

$ php artisan queue:work
# Or specify connection and queue:
$ php artisan queue:work redis --queue=emails,default

queue:listen berbanding queue:work

queue:work memuatkan aplikasi sekali dan memproses tugas dalam memori — lebih pantas tetapi memerlukan pekerja dimulakan semula selepas perubahan kod. queue:listen memuatkan semula aplikasi untuk setiap tugas — lebih mudah untuk pembangunan.

Tugas yang Gagal

Apabila tugas gagal selepas semua percubaan semula, tugas itu disimpan dalam jadual failed_jobs. Lihat dan cuba semula menggunakan Artisan.

$ php artisan queue:failed
$ php artisan queue:retry all
$ php artisan queue:flush

Keutamaan Baris Gilir

Tentukan beberapa baris gilir bernama dan tetapkan keutamaan apabila memulakan pekerja.

$ php artisan queue:work --queue=high,default,low
# Worker checks high first, then default, then low

Papan Pemuka Horizon

Untuk baris gilir Redis, Laravel Horizon menyediakan papan pemuka masa nyata yang menarik untuk memaparkan daya pemprosesan, tugas yang gagal dan statistik pekerja.

Memilih Pemacu

Gunakan sync secara setempat, database untuk projek kecil dan redis untuk skala produksi. Elakkan SQS melainkan anda sudah menggunakan AWS dan memerlukan skala tanpa had.

Ringkasan

Baris gilir memindahkan kerja perlahan kepada pekerja latar belakang. Konfigurasikan pemacu dalam .env, cipta tugas dengan Artisan dan mulakan pekerja dengan queue:work. Pantau tugas yang gagal dalam jadual failed_jobs.

Semakan Pantas

Pemacu baris gilir manakah yang menjalankan tugas serta-merta dalam proses yang sama?

Percuma untuk bermula

Pelajari PHP dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
49
Pelajaran
195

Soalan Lazim

Adakah pelajaran “Konsep Baris Gilir dan Pemacu” percuma?

Ya — teks penuh “Konsep Baris Gilir dan Pemacu” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus PHP Academy, tingkat taraf kepada CoddyKit PRO. Kursus PHP Academy merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Konsep Baris Gilir dan Pemacu”?

Fahami pemprosesan tak segerak dan konfigurasikan pemacu baris gilir pangkalan data atau Redis. Anda berlatih PHP Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan PHP Academy?

Tiada pengalaman terdahulu diperlukan. Pembelajaran PHP Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 4.

Berapa lamakah pelajaran “Konsep Baris Gilir dan Pemacu” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran PHP Academy ini?

Ya. Setiap pelajaran PHP Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Konsep Baris Gilir dan Pemacu
  2. Mencipta dan Menghantar Tugas
  3. Percubaan Semula, Kelewatan dan Rantaian Tugas
  4. Memantau Baris Gilir dengan Laravel Horizon
← Kembali ke PHP Academy