مارک پلاس

تکنولوژی نوین اینترنتی

Laravel Horizon مدیریت Jobها

دسته‌بندی‌ها

Laravel Horizon مدیریت Jobها
 Laravel Horizon مدیریت Jobها

Laravel Horizon یکی از ابزارهای قدرتمند لاراول برای مدیریت صف‌های (queues) Job‌ها است. این ابزار به شما اجازه می‌ده تا به راحتی صف‌های پردازشی را مدیریت کنید، وضعیت آن‌ها را بررسی کنید و حتی عملکرد‌ها و متریک‌های مختلف را مانیتور کنید.


🚀 Laravel Horizon

ابزار مدیریت صف‌های Job در لاراول که با استفاده از آن می‌توانید صف‌های طولانی و پیچیده را مانیتور، تنظیم و کنترل کنید.


🧰 نصب Horizon

1. نصب پکیج Horizon:

bash
composer require laravel/horizon

2. انتشار فایل‌های تنظیمات:

bash
php artisan horizon:install

این دستور فایل تنظیمات config/horizon.php را در پروژه ایجاد می‌کند.

3. اجرای migration‌ها برای جدول‌های مربوط به Horizon:

bash
php artisan migrate

⚙️ تنظیمات config/horizon.php

در این فایل می‌توانید تنظیمات مختلف Horizon رو انجام بدید. برای مثال، برای مدیریت صف‌ها و نحوه نمایش آن‌ها.

  • dashboard: برای کنترل دسترسی به داشبورد

  • environments: برای پیکربندی تعداد پردازشگرها و مدت زمان تاخیر

تنظیمات نمونه:

php
'environments' => [ 'local' => [ 'driver' => 'redis', 'queue' => 'default', 'processes' => 1, // تعداد پردازشگرها 'balance' => 'simple', ], 'production' => [ 'driver' => 'redis', 'queue' => 'default', 'processes' => 10, // تعداد پردازشگرها 'balance' => 'auto', ], ],

🚀 استفاده از Horizon

بعد از نصب، می‌توانید از Horizon برای مدیریت و مشاهده صف‌ها استفاده کنید.

1. راه‌اندازی Horizon:

برای راه‌اندازی Horizon به سادگی می‌توانید از دستور زیر استفاده کنید:

bash
php artisan horizon

این دستور میاد و Horizon رو در پس‌زمینه اجرا می‌کنه تا تمامی Job‌ها رو پردازش کنه.


🖥 داشبورد Horizon

برای مشاهده وضعیت صف‌ها و Job‌ها از داشبورد Horizon استفاده می‌کنید.

  1. بعد از راه‌اندازی Horizon، می‌توانید به آدرس زیر برید تا داشبورد رو مشاهده کنید:

http
http://your-app-domain/horizon

در این داشبورد می‌توانید موارد زیر رو مشاهده کنید:

  • Job‌های در حال انتظار

  • Job‌های در حال اجرا

  • Job‌های موفق و ناموفق

  • آمار و متریک‌ها (مثل زمان اجرای Job‌ها)


🧩 ایجاد Job‌ها با Horizon

1. ایجاد Job:

bash
php artisan make:job ProcessPodcast

این دستور یک Job به نام ProcessPodcast می‌سازه.

2. تعریف رفتار Job:

در فایل ProcessPodcast.php که در پوشه app/Jobs/ ایجاد شده، می‌توانید منطق پردازش Job رو تعریف کنید:

php
namespace App\Jobs; use App\Models\Podcast; class ProcessPodcast extends Job { public function handle() { // عملیات پردازش } }

3. ارسال Job به صف:

برای ارسال این Job به صف در هر کجا از کد می‌توانید از متد dispatch استفاده کنید:

php
ProcessPodcast::dispatch($podcast);

🛠 مدیریت صف‌ها با Horizon

1. مشاهده وضعیت Job‌ها:

در داشبورد Horizon می‌توانید وضعیت Job‌های مختلف رو مشاهده کنید و ببینید که کدام Job‌ها در حال پردازش هستند.

2. متوقف کردن پردازش Job‌ها:

می‌توانید از دستورات زیر برای توقف پردازش استفاده کنید:

  • متوقف کردن تمام Job‌ها:

bash
php artisan horizon:pause
  • از سر گرفتن پردازش‌ها:

bash
php artisan horizon:continue

3. پاکسازی صف‌های پردازش شده:

bash
php artisan horizon:purge

🏆 ویژگی‌های Horizon

  • مانیتورینگ پیشرفته: مشاهده وضعیت Job‌ها، پردازش‌ها و متریک‌ها

  • مدیریت صف‌ها: تنظیم و کنترل صف‌ها، پردازشگرها، و توازن بار

  • عملکرد بالا: سازگاری با Redis و سایر سیستم‌های صف

  • پشتیبانی از حالت real-time: مشاهده وضعیت به‌صورت لحظه‌ای


📋 جمع‌بندی

عملدستور
نصب Horizoncomposer require laravel/horizon
انتشار فایل‌های تنظیماتphp artisan horizon:install
راه‌اندازی Horizonphp artisan horizon
مشاهده داشبوردhttp://your-app-domain/horizon
ارسال Job به صفProcessPodcast::dispatch($podcast)
توقف پردازش‌هاphp artisan horizon:pause
ادامه پردازش‌هاphp artisan horizon:continue

Laravel Horizon یکی از ابزارهای قدرتمند لاراول برای مدیریت صف‌های (queues) Job‌ها است. این ابزار به شما اجازه می‌ده تا به راحتی صف‌های پردازشی را مدیریت کنید، وضعیت آن‌ها را بررسی کنید و حتی عملکرد‌ها و متریک‌های مختلف را مانیتور کنید.


🚀 Laravel Horizon

ابزار مدیریت صف‌های Job در لاراول که با استفاده از آن می‌توانید صف‌های طولانی و پیچیده را مانیتور، تنظیم و کنترل کنید.


🧰 نصب Horizon

1. نصب پکیج Horizon:

bash
composer require laravel/horizon

2. انتشار فایل‌های تنظیمات:

bash
php artisan horizon:install

این دستور فایل تنظیمات config/horizon.php را در پروژه ایجاد می‌کند.

3. اجرای migration‌ها برای جدول‌های مربوط به Horizon:

bash
php artisan migrate

⚙️ تنظیمات config/horizon.php

در این فایل می‌توانید تنظیمات مختلف Horizon رو انجام بدید. برای مثال، برای مدیریت صف‌ها و نحوه نمایش آن‌ها.

  • dashboard: برای کنترل دسترسی به داشبورد

  • environments: برای پیکربندی تعداد پردازشگرها و مدت زمان تاخیر

تنظیمات نمونه:

php
'environments' => [ 'local' => [ 'driver' => 'redis', 'queue' => 'default', 'processes' => 1, // تعداد پردازشگرها 'balance' => 'simple', ], 'production' => [ 'driver' => 'redis', 'queue' => 'default', 'processes' => 10, // تعداد پردازشگرها 'balance' => 'auto', ], ],

🚀 استفاده از Horizon

بعد از نصب، می‌توانید از Horizon برای مدیریت و مشاهده صف‌ها استفاده کنید.

1. راه‌اندازی Horizon:

برای راه‌اندازی Horizon به سادگی می‌توانید از دستور زیر استفاده کنید:

bash
php artisan horizon

این دستور میاد و Horizon رو در پس‌زمینه اجرا می‌کنه تا تمامی Job‌ها رو پردازش کنه.


🖥 داشبورد Horizon

برای مشاهده وضعیت صف‌ها و Job‌ها از داشبورد Horizon استفاده می‌کنید.

  1. بعد از راه‌اندازی Horizon، می‌توانید به آدرس زیر برید تا داشبورد رو مشاهده کنید:

http
http://your-app-domain/horizon

در این داشبورد می‌توانید موارد زیر رو مشاهده کنید:

  • Job‌های در حال انتظار

  • Job‌های در حال اجرا

  • Job‌های موفق و ناموفق

  • آمار و متریک‌ها (مثل زمان اجرای Job‌ها)


🧩 ایجاد Job‌ها با Horizon

1. ایجاد Job:

bash
php artisan make:job ProcessPodcast

این دستور یک Job به نام ProcessPodcast می‌سازه.

2. تعریف رفتار Job:

در فایل ProcessPodcast.php که در پوشه app/Jobs/ ایجاد شده، می‌توانید منطق پردازش Job رو تعریف کنید:

php
namespace App\Jobs; use App\Models\Podcast; class ProcessPodcast extends Job { public function handle() { // عملیات پردازش } }

3. ارسال Job به صف:

برای ارسال این Job به صف در هر کجا از کد می‌توانید از متد dispatch استفاده کنید:

php
ProcessPodcast::dispatch($podcast);

🛠 مدیریت صف‌ها با Horizon

1. مشاهده وضعیت Job‌ها:

در داشبورد Horizon می‌توانید وضعیت Job‌های مختلف رو مشاهده کنید و ببینید که کدام Job‌ها در حال پردازش هستند.

2. متوقف کردن پردازش Job‌ها:

می‌توانید از دستورات زیر برای توقف پردازش استفاده کنید:

  • متوقف کردن تمام Job‌ها:

bash
php artisan horizon:pause
  • از سر گرفتن پردازش‌ها:

bash
php artisan horizon:continue

3. پاکسازی صف‌های پردازش شده:

bash
php artisan horizon:purge

🏆 ویژگی‌های Horizon

  • مانیتورینگ پیشرفته: مشاهده وضعیت Job‌ها، پردازش‌ها و متریک‌ها

  • مدیریت صف‌ها: تنظیم و کنترل صف‌ها، پردازشگرها، و توازن بار

  • عملکرد بالا: سازگاری با Redis و سایر سیستم‌های صف

  • پشتیبانی از حالت real-time: مشاهده وضعیت به‌صورت لحظه‌ای


📋 جمع‌بندی

عملدستور
نصب Horizoncomposer require laravel/horizon
انتشار فایل‌های تنظیماتphp artisan horizon:install
راه‌اندازی Horizonphp artisan horizon
مشاهده داشبوردhttp://your-app-domain/horizon
ارسال Job به صفProcessPodcast::dispatch($podcast)
توقف پردازش‌هاphp artisan horizon:pause
ادامه پردازش‌هاphp artisan horizon:continue

محتوای مرتبط

پست‌های مرتبط