Exemples pour expliquer l'utilisation simple des files d'attente Laravel
Cet article vous apporte les connaissances pertinentes sur laravel Il présente principalement les files d'attente Laravel, dans quelles circonstances utiliser les files d'attente, configurer le stockage des files d'attente et d'autres problèmes connexes. J'espère qu'il sera utile à tout le monde.
【Recommandation associée : Tutoriel d'apprentissage de Laravel】
Cet article présentera comment utiliser les files d'attente dans Laravel et comprendra pourquoi les files d'attente sont utilisées
Quand utiliser les files d'attente ?
Prend du temps, comme télécharger un fichier puis effectuer certaines conversions de format, etc.
Si vous devez assurer le débit de livraison, comme l'envoi d'un message texte, parce que vous devez appeler l'API de quelqu'un d'autre, il y a toujours un risque d'échec, donc afin d'assurer la livraison, il est essentiel de réessayer.
Enregistrez le processus d'utilisation :
1. Configurez le stockage de la file d'attente
Le fichier de configuration de la file d'attente est stocké dans config/queue.php. La valeur par défaut est le traitement de synchronisation. Vous pouvez choisir ici la méthode d'utilisation. est la suivante.
Base de données
Créez une tâche de stockage de table de données et exécutez la migration des données après avoir exécuté la commande artisanale
php artisan queue:table php artisan migrate
Redis
Pour utiliser le pilote de file d'attente Redis, vous devez configurer la connexion à la base de données Redis dans votre fichier de configuration config/ base de données.php.
Si votre connexion à la file d'attente Redis utilise le cluster Redis, le nom de votre file d'attente doit contenir la balise de hachage de clé. Ceci permet de garantir que toutes les clés Redis d'une file d'attente donnée sont placées dans le même hachage :
'redis' => [ 'driver' => 'redis', 'connection' => 'default', 'queue' => 'default', 'retry_after' => 90, ],
2. Créez la classe de tâches
La classe de tâches de la file d'attente est dans le répertoire app/Jobs/
php artisan make : job SaveBusLine
Modifiez le fichier comme suit :
namespace App\Jobs; use App\Http\Repository\BusRepository; use Illuminate\Bus\Queueable; use Illuminate\Queue\SerializesModels; use Illuminate\Queue\InteractsWithQueue; use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Foundation\Bus\Dispatchable; class SaveBusLine implements ShouldQueue { use Dispatchable, InteractsWithQueue, Queueable, SerializesModels; /** * 任务最大尝试次数。 * * @var int */ public $tries = 3; /** * 任务运行的超时时间。 * * @var int */ public $timeout = 60; private $datum; /** * Create a new job instance. * @param array|object $datum * * @return void */ public function __construct($datum) { $this->datum = $datum; } /** * Execute the job. * * @return void */ public function handle() { BusRepository::getInstent()->updateBusLine($this->datum); } }
Appelez la méthode de file d'attente dans le contrôleur ou l'entrepôt :
use App\Jobs\SaveBusLine; use Carbon\Carbon; /***************** 队列操作 start *******************/ SaveBusLine::dispatch($arrayData)->delay(Carbon::now()->addMinute(1)); /***************** 队列操作 end *******************/
3. Démarrez la tâche de file d'attente
php artisan queue:work
4.
Superviseur Il s'agit d'un logiciel de surveillance des processus sur le système d'exploitation Linux qui redémarre automatiquement les commandes queue:listen ou queue:work après leur échec. Pour installer Supervisor sur Ubuntu, vous pouvez utiliser la commande suivante :
sudo apt-get install supervisor{tip} Si la configuration manuelle de Supervisor semble un peu écrasante, vous pouvez envisager d'utiliser Laravel Forge, qui peut installer et configurer automatiquement Supervisor pour votre projet Laravel.
Configuration du superviseur
Les fichiers de configuration du superviseur sont généralement placés dans le répertoire /etc/supervisor/conf.d. Dans ce répertoire, vous pouvez créer n'importe quel nombre de fichiers de configuration pour indiquer au superviseur comment surveiller vos processus. Par exemple, nous créons un laravel-worker.conf pour démarrer et surveiller un processus queue:work :
[program:laravel-worker] process_name=%(program_name)s_%(process_num)02d command=php ~/laravel/artisan queue:work redis --sleep=3 --tries=3 autostart=true autorestart=true user=lisgroup numprocs=8 redirect_stderr=true stdout_logfile=/home/lisgroup/logs/worker.logLa commande numprocs dans cet exemple demandera au superviseur d'exécuter et de surveiller 8 processus queue:work, et de les redémarrer après leur échec. . Bien entendu, vous devez modifier la commande queue:work redis command pour afficher le pilote de file d'attente de votre choix. Vous devez également modifier l'utilisateur d'exécution user = Pour l'utiliser, veuillez vous référer à la documentation officielle du superviseur. 5. Gérer les tâches ayant échouéParfois, les tâches de votre file d'attente échoueront. Ne vous inquiétez pas, les choses ne se passeront pas toujours sans heurts. Laravel dispose d'un moyen pratique intégré pour spécifier le nombre maximum de fois qu'une tâche sera réessayée. Lorsqu'une tâche dépasse ce nombre de tentatives, elle sera insérée dans la table de données failed_jobs. Pour créer un fichier de migration pour la table failed_jobs, vous pouvez utiliser la commande queue:failed-table, puis utiliser la commande migrate Artisan pour générer la table failed_jobs :
sudo supervisorctl reread sudo supervisorctl update sudo supervisorctl start laravel-worker:*Ensuite, exécutez le processeur de file d'attente, et lors de l'appel du file d'attente, vous devez transmettre le paramètre --tries lors de la commande Spécifie le nombre maximum de tentatives pour la tâche. Si elle n'est pas spécifiée, la tâche sera réessayée de manière permanente :
php artisan queue:failed-table php artisan migrate6. Effacer les tâches ayant échoué Vous pouvez définir directement la méthode ayant échoué dans la classe de tâches, qui peut exécuter la logique d'effacement de la tâche lorsque la tâche échoue. Cet endroit est parfait pour envoyer un avertissement à l'utilisateur ou réinitialiser le fonctionnement de l'exécution de la tâche. Les informations d'exception qui provoquent l'échec de la tâche seront transmises à la méthode ayant échoué :
php artisan queue:work redis --tries=3[Recommandations associées :
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!

À cette époque de progrès technologique continu, la maîtrise des cadres avancés est crucial pour les programmeurs modernes. Cet article vous aidera à améliorer vos compétences en développement en partageant des techniques peu connues dans le cadre de Laravel. Connu pour sa syntaxe élégante et une large gamme de fonctionnalités, cet article va creuser ses fonctionnalités puissantes et fournir des conseils et des astuces pratiques pour vous aider à créer des applications Web efficaces et maintenables.

Laravel et ThinkPHP sont tous deux des cadres PHP populaires et ont leurs propres avantages et inconvénients dans le développement. Cet article comparera les deux en profondeur, mettant en évidence leur architecture, leurs fonctionnalités et leurs différences de performances pour aider les développeurs à faire des choix éclairés en fonction de leurs besoins spécifiques de projet.

La création de capacités de connexion des utilisateurs à Laravel est une tâche cruciale et cet article fournira un aperçu complet couvrant toutes les étapes critiques de l'enregistrement des utilisateurs à la vérification de la connexion. Nous plongerons dans la puissance des capacités de vérification intégrées de Laravel et vous guiderons à travers la personnalisation et l'extension du processus de connexion en fonction des besoins spécifiques. En suivant ces instructions étape par étape, vous pouvez créer un système de connexion sécurisé et fiable qui offre une expérience d'accès transparente pour les utilisateurs de votre application Laravel.

Dans le Guide de sélection de la version Laravel Framework pour les débutants, cet article plonge dans les différences de version de Laravel, conçues pour aider les débutants à faire des choix éclairés parmi de nombreuses versions. Nous nous concentrerons sur les principales caractéristiques de chaque version, comparerons leurs avantages et leurs inconvénients, et fournirons des conseils utiles pour aider les débutants à choisir la version la plus appropriée de Laravel en fonction de leur niveau de compétence et de leurs exigences de projet. Pour les débutants, le choix d'une version appropriée de Laravel est crucial car il peut avoir un impact significatif sur leur courbe d'apprentissage et leur expérience de développement globale.

Le Framework Laravel a des méthodes intégrées pour afficher facilement son numéro de version pour répondre aux différents besoins des développeurs. Cet article explorera ces méthodes, y compris l'utilisation de l'outil de ligne de commande Composer, l'accès à des fichiers .env ou l'obtention d'informations de version via le code PHP. Ces méthodes sont essentielles pour maintenir et gérer le versioning d'applications Laravel.

Laravel est un cadre d'applications Web basé sur PHP populaire qui est populaire parmi les développeurs pour sa syntaxe élégante et ses fonctionnalités puissantes. Sa dernière version introduit de nombreuses améliorations et nouvelles fonctionnalités conçues pour améliorer l'expérience de développement et les performances des applications. Cet article plongera dans la dernière approche de Laravel, en se concentrant sur la façon de tirer parti de ces mises à jour pour créer des applications Web plus puissantes et efficaces.

Résumé de l'article: Cet article fournit des instructions détaillées étape par étape pour guider les lecteurs sur la façon d'installer facilement le cadre Laravel. Laravel est un puissant cadre PHP qui accélère le processus de développement des applications Web. Ce didacticiel couvre le processus d'installation des exigences du système à la configuration des bases de données et à la configuration du routage. En suivant ces étapes, les lecteurs peuvent jeter rapidement et efficacement une base solide pour leur projet Laravel.

Vous voulez apprendre le cadre de Laravel, mais ne souffrez pas de ressources ni de pression économique? Cet article vous fournit un apprentissage gratuit de Laravel, vous apprenant à utiliser des ressources telles que les plateformes en ligne, les documents et les forums communautaires pour jeter une base solide pour votre parcours de développement PHP de la mise en place de maîtrise.


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Version Mac de WebStorm
Outils de développement JavaScript utiles

Télécharger la version Mac de l'éditeur Atom
L'éditeur open source le plus populaire

DVWA
Damn Vulnerable Web App (DVWA) est une application Web PHP/MySQL très vulnérable. Ses principaux objectifs sont d'aider les professionnels de la sécurité à tester leurs compétences et leurs outils dans un environnement juridique, d'aider les développeurs Web à mieux comprendre le processus de sécurisation des applications Web et d'aider les enseignants/étudiants à enseigner/apprendre dans un environnement de classe. Application Web sécurité. L'objectif de DVWA est de mettre en pratique certaines des vulnérabilités Web les plus courantes via une interface simple et directe, avec différents degrés de difficulté. Veuillez noter que ce logiciel

SublimeText3 version anglaise
Recommandé : version Win, prend en charge les invites de code !

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)