Maison  >  Article  >  cadre php  >  Développement Laravel : Comment utiliser Laravel Horizon pour implémenter la surveillance des files d'attente ?

Développement Laravel : Comment utiliser Laravel Horizon pour implémenter la surveillance des files d'attente ?

WBOY
WBOYoriginal
2023-06-17 13:10:591750parcourir

À mesure que la taille des applications Web continue de croître, les files d'attente sont devenues un élément essentiel de divers systèmes. Les files d'attente peuvent améliorer les performances des applications en traitant certaines tâches de manière asynchrone. De nombreux développeurs PHP utilisent le framework Laravel, et Laravel fournit un outil de gestion de files d'attente très utile : Laravel Queues.

Laravel Queues permet aux développeurs d'implémenter facilement des fonctionnalités telles que la répartition des tâches et le traitement asynchrone des tâches. Nous pouvons configurer différents pilotes de file d'attente, tels que le pilote de base de données, le pilote Redis, etc. Dans Laravel, nous pouvons également utiliser un outil appelé Laravel Horizon pour surveiller et gérer les files d'attente.

Laravel Horizon est une boîte à outils de surveillance des files d'attente officiellement fournie par Laravel. Il fournit un tableau de bord intuitif pour surveiller l'état d'exécution de la file d'attente en temps réel, ce qui permet aux développeurs de gérer et de déboguer facilement la file d'attente. Cet article expliquera comment utiliser Laravel Horizon pour implémenter la surveillance des files d'attente et démontrera ses principales fonctions et avantages.

1. Installez Laravel Horizon

Tout d'abord, nous devons installer Laravel Horizon dans notre application Laravel. Nous pouvons utiliser Composer pour installer :

composer require laravel/horizon

Une fois l'installation terminée, nous devons ajouter le fournisseur de services Laravel Horizon dans le fichier config/app.php. Ouvrez le fichier config/app.php et ajoutez :

LaravelHorizonHorizonServiceProvider::class,

au tableau des fournisseurs. Ensuite, nous devons générer le fichier de configuration d'Horizon et le pack de langue d'Horizon. Nous pouvons utiliser la commande Artisan pour générer :

php artisan vendor:publish --provider="LaravelHorizonHorizonServiceProvider"

2. Configurer Laravel Horizon

Après avoir installé Laravel Horizon, nous devons le configurer. Nous pouvons configurer Horizon en utilisant le fichier de configuration config/horizon.php. Grâce à ce fichier, nous pouvons configurer la connexion à la file d'attente, le nombre de processus de travail de file d'attente, le niveau de journalisation, le temps d'attente de sortie et d'autres paramètres concernant la file d'attente.

Où, connexion est le nom de la connexion à la file d'attente configurée pour la surveillance Horizon. Laravel utilise redis comme pilote de file d'attente par défaut, nous pouvons donc définir ce nom sur "redis".

Dans le fichier config/horizon.php, nous pouvons définir la méthode d'accès à Horizon, par exemple si une authentification est requise. Nous pouvons ajouter le middleware d'authentification Laravel standard aux routes d'Horizon. Cela garantira que seuls les utilisateurs authentifiés pourront afficher la page du tableau de bord d'Horizon :

'middleware' => ['web', 'auth'],

3. Démarrez Horizon

Après avoir installé et configuré Laravel Horizon, nous pouvons démarrer Horizon. Nous pouvons démarrer Horizon en utilisant la commande Artisan :

php artisan horizon

Sur la fenêtre de notre console, vous verrez des détails sur Horizon. Cela inclut le nom de la file d'attente à laquelle Horizon est connecté, le nombre de processus de travail, la sortie du journal, etc.

4. Utilisation de Laravel Horizon

Après avoir démarré Horizon, nous pouvons accéder à la page Horizon Dashboard. Nous pouvons y accéder via l'URL suivante :

http://your-app.com/horizon

Sur la page Tableau de bord, nous pouvons voir de nombreuses données liées à la file d'attente. Il s'agit notamment de :

  1. Nombre de tâches « En attente » : Sous l'onglet « En attente », nous pouvons voir le nombre de tâches non traitées dans la file d'attente actuelle. Cela nous aide à comprendre l’état de la file d’attente en temps réel.
  2. Métriques en temps réel : sous l'onglet Métriques en temps réel, nous pouvons afficher des métriques en temps réel sur les tâches terminées et échouées, les retards de traitement, etc. Cet onglet nous aide à mieux comprendre l'état de la file d'attente.
  3. Processus de travail : sous l'onglet Processus de travail, nous pouvons afficher la liste des processus de travail de file d'attente en cours d'exécution et afficher des informations sur chaque processus de travail. Ici, nous pouvons visualiser la mémoire consommée par chaque processus, le nombre de tâches traitées, etc.
  4. File d'attente : sous l'onglet File d'attente, nous pouvons obtenir des informations plus détaillées sur la file d'attente. Nous pouvons afficher des informations sur le nom de la file d'attente, le type de tâche, le nombre de tâches, etc. Ici, nous pouvons également effectuer diverses actions telles que aimer, mettre en pause et ne plus aimer la file d'attente, ainsi que vider manuellement la file d'attente.

Résumé

Laravel Horizon est un outil de surveillance de file d'attente très pratique et facile à utiliser dans le framework Laravel. Avec Horizon, nous pouvons mieux comprendre l'état de la file d'attente, traiter et garantir que les tâches dans la file d'attente sont traitées de manière rapide et efficace. Si vous utilisez le framework Laravel, l'utilisation de Laravel Horizon est une excellente option pour gérer vos files d'attente.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn