Dans Laravel, la file d'attente peut être utilisée pour autoriser les opérations de suppression à l'avant de la table et les opérations d'insertion à l'arrière de la table ; la file d'attente est une table linéaire avec des opérations restreintes, et celle qui effectue l'opération d'insertion. est appelée la queue de la file d'attente, et l'opération de suppression La fin de l'opération est appelée la tête de la file d'attente. La file d'attente peut retarder le traitement des tâches fastidieuses et améliorer la vitesse de réponse des requêtes Web.
L'environnement d'exploitation de cet article : système Windows 10, Laravel version 9, ordinateur Dell G3.
Une file d'attente est une table linéaire avec des opérations restreintes. La particularité est qu'elle autorise uniquement les opérations de suppression à l'avant de la table et les opérations d'insertion à l'arrière de la table. L'extrémité qui effectue l'opération d'insertion est appelée la queue de la file d'attente, et l'extrémité qui effectue l'opération de suppression est appelée la tête de la file d'attente.
Avec les files d'attente, vous pouvez reporter le traitement des tâches chronophages (comme l'envoi d'e-mails) à plus tard. Retarder ces tâches chronophages peut améliorer considérablement la vitesse de réponse aux requêtes Web.
Il existe de nombreuses façons d'implémenter des files d'attente. Laravel prend également en charge plusieurs pilotes d'implémentation de files d'attente, tels que les bases de données, Redis, Beanstalkd, IronMQ et Amazon SQS. De plus, il prend également en charge l'implémentation synchrone des files d'attente (par défaut) et définit même la file d'attente. pilote à null. Aucune file d’attente n’est utilisée. Laravel fournit une interface unifiée pour ces pilotes de file d'attente, ce qui nous permet de changer facilement de pilote à volonté sans modifier le codage de la logique métier, offrant ainsi la réutilisabilité du code.
En fait, pour parler franchement, il stocke simplement le nom de la clé et la valeur de la clé de la tâche. N'importe quel support de stockage peut être utilisé, et le soi-disant pilote de file d'attente consiste à extraire le code de la tâche stocké dans ces supports et à l'exécuter. selon l'algorithme de file d'attente, c'est juste un morceau de code qui est une méthode de déploiement.
Avantages
Découplage : la file d'attente des messages peut découpler le système, améliorer la vitesse de réponse et les fonctions du système sont regroupées vers l'intérieur et ouvertes vers l'extérieur
Asynchrone : la file d'attente des messages peut supprimer les fonctions asynchrones du système ; et réduire le couplage fonctionnel. Assurer l'efficacité du développement ;
Élimination des pics : la file d'attente des messages peut réduire les pics et le flux pour assurer un fonctionnement stable des consommateurs en aval.
Configuration
À partir du fichier de configuration, nous devons d'abord configurer la valeur par défaut ; pilote de file d'attente comme Redis dans le fichier de configuration. Le fichier de configuration de la file d'attente est config/queue.php.
Éléments de configuration des connexions : contient tous les pilotes de file d'attente pris en charge par Laravel.
élément de configuration ayant échoué : utilisé pour configurer la base de données et la table de données où sont stockées les tâches de file d'attente ayant échoué. Ici, nous devons le modifier en fonction de notre propre configuration de base de données.
Description : Le premier élément de configuration par défaut dans ce fichier de configuration est utilisé pour spécifier le pilote de file d'attente par défaut. Il peut être remplacé par d'autres pilotes de file d'attente que nous choisissons (en modifiant en fait QUEUE_DRIVER dans .env)
Comme indiqué ci-dessous :
【Recommandation associée : tutoriel vidéo laravel】
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!