0Pricing
PHP Academy · Pelajaran

Konsep Antrean dan Driver

Pahami pemrosesan asinkron dan konfigurasikan driver antrean basis data atau Redis.

Konsep Antrean dan Driver adalah pelajaran PHP Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar PHP Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus PHP Academy mencakup 4 pelajaran total.

Apa Itu Antrean

Antrean memungkinkan Anda menunda tugas yang lambat atau membutuhkan banyak sumber daya (mengirim surel, mengubah ukuran gambar, mengakses API eksternal) ke pekerja latar belakang, sehingga respons HTTP tetap cepat.

Arsitektur Antrean

Proses utama (server web) memasukkan tugas ke antrean. Proses pekerja terpisah mengambil dan menjalankan tugas secara asinkron.

Penggerak Antrean yang Tersedia

Laravel mendukung beberapa backend antrean:

  • database — tugas disimpan di basis data (baik untuk memulai)
  • redis — cepat, siap untuk produksi
  • sqs — Layanan Antrean Sederhana AWS
  • beanstalkd — cepat dan ringan
  • sync — berjalan segera (pengembangan lokal)

Mengonfigurasi Penggerak Antrean

Atur penggerak di .env.

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

Menyiapkan Penggerak database

Jika menggunakan penggerak database, buat tabel jobs.

$ php artisan queue:table
$ php artisan migrate

Memulai Pekerja Antrean

Proses pekerja mengambil dan menjalankan tugas dari antrean.

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

queue:listen vs queue:work

queue:work memuat aplikasi sekali dan memproses tugas di memori — lebih cepat, tetapi pekerja harus dimulai ulang setelah perubahan kode. queue:listen memuat ulang aplikasi untuk setiap tugas — lebih mudah untuk pengembangan.

Tugas yang Gagal

Jika tugas gagal setelah semua percobaan ulang, tugas tersebut disimpan di tabel failed_jobs. Lihat dan coba ulang menggunakan Artisan.

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

Prioritas Antrean

Tentukan beberapa antrean bernama dan tetapkan prioritas saat memulai pekerja.

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

Dasbor Horizon

Untuk antrean Redis, Laravel Horizon menyediakan dasbor waktu nyata yang menarik untuk menampilkan jumlah pemrosesan, tugas yang gagal, dan statistik pekerja.

Memilih Penggerak

Gunakan sync secara lokal, database untuk proyek kecil, dan redis untuk skala produksi. Hindari SQS kecuali Anda sudah menggunakan AWS dan membutuhkan skala tak terbatas.

Ringkasan

Antrean mengalihkan pekerjaan lambat ke pekerja latar belakang. Konfigurasikan penggerak di .env, buat tugas dengan Artisan, dan mulai pekerja dengan queue:work. Pantau tugas yang gagal di tabel failed_jobs.

Pemeriksaan Singkat

Penggerak antrean mana yang langsung menjalankan tugas dalam proses yang sama?

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Konsep Antrean dan Driver” gratis?

Ya — teks lengkap “Konsep Antrean dan Driver” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus PHP Academy, upgrade ke CoddyKit PRO. Kursus PHP Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Konsep Antrean dan Driver”?

Pahami pemrosesan asinkron dan konfigurasikan driver antrean basis data atau Redis. Kamu berlatih PHP Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai PHP Academy?

Tidak diperlukan pengalaman sebelumnya. PHP Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.

Berapa lama pelajaran “Konsep Antrean dan Driver” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran PHP Academy ini?

Ya. Setiap pelajaran PHP Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Konsep Antrean dan Driver
  2. Membuat dan Mengirimkan Job
  3. Percobaan Ulang, Penundaan, dan Perantaian Job
  4. Memantau Antrean dengan Laravel Horizon
← Kembali ke PHP Academy