# Laravel Horizon คืออะไร? คู่มือ Queue Monitoring Redis Dashboard สำหรับ SME ไทย 2026
ในยุคที่ Laravel Application มี Background Jobs ไหลผ่านระบบนับแสนครั้งต่อวัน ไม่ว่าจะเป็นการส่ง Email, Notification, Invoice PDF, การ Sync ข้อมูลจาก API หรือการประมวลผล Video — หากไม่มีเครื่องมือ Monitor Queue ที่ดี Developer จะมอง "ไม่เห็น" Job ที่ค้าง, Job ที่ Fail, หรือ Worker ที่หลุด ทำให้เกิด Downtime, ลูกค้าไม่ได้รับ Email และรายได้หายไปโดยไม่รู้ตัว
Laravel Horizon คือ Dashboard Official จาก Laravel ที่ออกแบบมาเพื่อ Monitor Queue ที่ทำงานบน Redis โดยเฉพาะ ให้คุณเห็นทุกอย่างแบบ Real-time ทั้ง Throughput, Runtime, Memory และ Failed Jobs พร้อม Retry ได้ในคลิกเดียว เหมาะอย่างยิ่งสำหรับ SME ไทยที่ใช้ Laravel เป็น Backend หลัก
บทความนี้จะพาคุณรู้จัก Laravel Horizon ตั้งแต่ Concept พื้นฐาน, การติดตั้ง, การ Config Supervisors, Best Practice สำหรับ Production, การเปรียบเทียบกับเครื่องมืออื่น และ Use Case จริงที่ SME สามารถนำไปใช้ได้ทันที
Laravel Horizon คืออะไร?
Laravel Horizon เป็น First-party Package จาก Laravel (ฟรี, MIT License) ที่ทำหน้าที่เป็น Queue Manager + Dashboard สำหรับ Redis Queue โดยเฉพาะ จุดเด่นคือ Interface ที่สวยงาม, Config เป็น Code ไม่ต้องแก้ Server และรองรับ Tag-based Monitoring ที่ช่วยแบ่งกลุ่ม Jobs ได้
| ความสามารถหลัก | รายละเอียด |
|----------------|-------------|
| Real-time Dashboard | ดู Throughput, Runtime, Memory ได้ทันที |
| Failed Job Management | Retry, Inspect Payload, Delete ได้จาก UI |
| Metrics & Analytics | กราฟแสดง Job Trend ย้อนหลัง |
| Auto Scaling | Scale Workers ตาม Load อัตโนมัติ |
| Notifications | ส่ง Alert ไป Slack, SMS, Email เมื่อ Queue Wait นาน |
| Tag System | Group Jobs ตาม Context เช่น user-id, order-id |
ทำไม SME ไทยต้องใช้ Horizon
1. มองเห็นปัญหาก่อนลูกค้าร้องเรียน
ลด MTTR (Mean Time To Recovery) ได้ถึง 70% เพราะเห็น Failed Jobs ทันที ไม่ต้อง SSH ไปอ่าน Log
2. รองรับการเติบโต
Auto-balancing Strategy ปรับจำนวน Worker ตาม Traffic — ช่วงเช้าส่ง Email หนัก Horizon เพิ่ม Worker ให้อัตโนมัติ แล้วลดลงเมื่อ Traffic ลดลง ช่วยประหยัดค่า Server
3. Developer Experience ที่เหนือชั้น
วิธีติดตั้ง Laravel Horizon 5 ขั้นตอน
ขั้นตอนที่ 1: ติดตั้ง Package
ใช้คำสั่ง composer require laravel/horizon และตามด้วย php artisan horizon:install เพื่อสร้างไฟล์ Config และ Service Provider
ขั้นตอนที่ 2: ตั้งค่า Redis เป็น Queue Connection
แก้ .env ให้ QUEUE_CONNECTION=redis และตรวจสอบว่า Redis Server ทำงานอยู่
ขั้นตอนที่ 3: Config Supervisors
เปิดไฟล์ config/horizon.php กำหนด Environment (production, local), แต่ละ Supervisor ระบุ Connection, Queue, จำนวน Processes ขั้นต่ำ-สูงสุด และ Balance Strategy (simple, auto, false)
ขั้นตอนที่ 4: Run Horizon
ขั้นตอนที่ 5: เข้า Dashboard
เปิด Browser ไปที่ https://yourdomain.com/horizon — กำหนด Gate ใน HorizonServiceProvider เพื่อควบคุม Access (ปกติควรจำกัดเฉพาะ Admin / IP ภายใน)
Best Practice สำหรับ Production
Comparison: Horizon vs ทางเลือกอื่น
| ฟีเจอร์ | Laravel Horizon | Laravel Default Queue Worker | Supervisor + Custom | BullMQ (Node.js) |
|---------|-----------------|------------------------------|---------------------|------------------|
| Dashboard | มี (สวย) | ไม่มี | ไม่มี | ต้องติดตั้งแยก |
| Redis Native | ใช่ | รองรับ | รองรับ | ใช่ |
| Auto Scaling | มี | ไม่มี | ต้องเขียนเอง | ต้องทำเอง |
| Retry จาก UI | ได้ | ไม่ได้ | ไม่ได้ | ได้ |
| Tagging | มี | ไม่มี | ไม่มี | มี |
| Cost | ฟรี | ฟรี | ฟรี | ฟรี |
| Learning Curve | ง่าย | ง่าย | ปานกลาง | ปานกลาง |
Use Case จริงของ SME ไทย
E-commerce: ใช้ Horizon Monitor Queue ส่ง SMS ยืนยัน Order ในช่วง Flash Sale — Auto-scale Worker จาก 3 เป็น 20 ในช่วง Peak ลดเวลา SMS ถึงลูกค้าจาก 5 นาที เหลือ 10 วินาที
Health Tech Clinic: ใช้ Queue ส่ง Lab Report PDF ไปเข้า LINE ของคนไข้ — Horizon Tag ด้วย patient_id ทำให้ Support Team ค้นหา Log Job ได้ใน 3 วินาที เมื่อคนไข้ร้องเรียน
SaaS Platform: ใช้ Horizon ดู Metrics การส่ง Billing Invoice ปลายเดือน — รู้ล่วงหน้าเมื่อ Queue Wait Time เกิน 2 นาที แล้ว Scale DB ก่อนพัง
สรุป + CTA
Laravel Horizon ไม่ใช่ของฟุ่มเฟือย แต่เป็นเครื่องมือพื้นฐานสำหรับทุก Laravel Project ที่ต้องการความเสถียรในระดับ Production โดยเฉพาะเมื่อธุรกิจเติบโต Background Job จะยิ่งเพิ่มขึ้น หากไม่มี Dashboard คุณจะบินแบบปิดตา
Key Takeaways:
หากคุณต้องการให้ทีม ADS FIT ช่วยตั้งค่า Laravel Horizon พร้อม Monitoring, Alerting และ Auto-scaling ที่เหมาะกับ SME ไทย ติดต่อเราวันนี้ หรืออ่านบทความที่เกี่ยวข้องเช่น Laravel Pulse, Laravel Reverb และ Laravel Octane ได้ในบล็อกของเรา
