Nous développons actuellement un projet utilisant le framework laravel. Le projet nécessite certaines données. Les données requises sont obtenues en effectuant des requêtes, des calculs et des traitements associés sur des dizaines de tables dans la base de données. nécessite l'écriture d'une minuterie. La tâche commence à 0 heures tous les soirs et se termine une fois que toutes les données ont été traitées. J'ai maintenant écrit une méthode dans le contrôleur Laravel pour traiter les données de la base de données. Il ne me reste plus qu'à exécuter cette méthode dans une boucle régulière pour réaliser la fonction.
Mais maintenant je ne sais pas comment l'exécuter régulièrement ? Est-il exécuté en mode php cli ? Ou utiliser une console artisanale pour exécuter ? Vous cherchez des conseils ?
crontab Utilisez la commande Linux wget ou curl pour accéder à votre contrôleur via des requêtes HTTP.
1. Pour de grandes quantités de données, il est préférable de ne pas les extraire de la couche application et d'écrire une procédure ou une fonction stockée MySQL. (L'appel peut être appelé via un événement mysql), ce traitement permettra d'économiser beaucoup de ressources.
2. Toujours en écrivant dans la procédure stockée, vous pouvez coopérer avec la tâche planifiée crond sous Linux pour un traitement planifié.
La planification de Laravel, je pense, répond très bien à vos besoins. La documentation chinoise est ici.
http://d.laravel-china.org/do...
Laravel a une fonction de planification de tâches. Il est recommandé de lire plus de documents~
.Selon votre situation, le plus simple est la planification des tâches de Laravel
contrebasse
Cela dépend des besoins de votre entreprise. S'il y a une exploitation et une maintenance, vous pouvez écrire vous-même une méthode pour exploiter les données et laisser l'exploitation et la maintenance écrire un script pour demander cette méthode régulièrement. S'il n'y a pas d'opération et de maintenance et que votre patron ne vous laisse pas toucher au serveur, vous pouvez choisir d'écrire un script PHP pour manipuler les données, utiliser le mode veille et les boucles pour le faire, mettre le fichier dans la connexion et utiliser l'en-tête. fonction pour accéder au lien de demande
Permettez-moi de vous recommander plusieurs bibliothèques pour les tâches planifiées. Chargez avec composer
Gestion des tâches planifiées basée sur Dispatcher Laravel
swoole-crontab Un programme de minuterie basé sur swoole qui prend en charge le traitement de deuxième niveau
jobby Un gestionnaire de tâches planifiées PHP
cronlingo Express crontabs sous forme de phrases conviviales
Si vous n'avez rien à faire, vous pouvez aller sur Awesomes - Voir-le en php
Si vous ne savez pas lire l'anglais, j'ai une sauvegarde ici et vous pouvez également le voir en cliquant ici pour sauter