suchen

Heim  >  Fragen und Antworten  >  Hauptteil

php - Wie implementiert man eine geplante Aufgabe, um Daten in der Datenbank zu bearbeiten?

Wir entwickeln derzeit ein Projekt mit dem Laravel-Framework. Die erforderlichen Daten werden durch die Durchführung entsprechender Abfragen, Berechnungen und Verarbeitungen in der Datenbank ermittelt erfordert das Schreiben eines Timers. Die Aufgabe beginnt jede Nacht um 0 Uhr und endet, nachdem alle Daten verarbeitet wurden. Ich habe jetzt eine Methode in den Laravel-Controller geschrieben, um die Daten in der Datenbank zu verarbeiten. Jetzt muss ich diese Methode nur noch in einer regulären Schleife ausführen, um die Funktion zu erreichen.

Aber jetzt weiß ich nicht, wie ich es regelmäßig ausführen soll? Wird es im PHP-CLI-Modus ausgeführt? Oder eine Artisan-Konsole zur Ausführung verwenden? Suchen Sie Rat?

PHPzPHPz2739 Tage vor1197

Antworte allen(8)Ich werde antworten

  • 某草草

    某草草2017-05-27 17:44:05

    crontab 使用Linux的wget或者curl命令通过Http请求访问你的控制器。

    Antwort
    0
  • PHPz

    PHPz2017-05-27 17:44:05

    1.大数据量最好就别拉出来应用层玩啦,写个mysql的存储过程或者函数。(调用可以通过mysql事件调用),这样处理会非常节省资源。

    2.还是写到存储过程,可以配合 linux中的 crond定时任务进行定时处理。

    Antwort
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-27 17:44:05

    Laravel 的 Scheduling 我觉得非常符合你的需求,中文文档在这里。
    http://d.laravel-china.org/do...

    Antwort
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-27 17:44:05

    laravel有调度任务功能的.建议多看文档~

    Antwort
    0
  • ringa_lee

    ringa_lee2017-05-27 17:44:05

    按你的情况最简单的就是laravel 的任务调度

    Antwort
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-27 17:44:05

    contrab

    Antwort
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-27 17:44:05

    这玩意看你公司需求了,有运维的话,你自己写个方法来操作数据,让运维写个脚本来定时请求这个方法就行了。没有运维并且你老板也不让你动服务器的话,可以选择写一个PHP脚本来操作数据,用sleep和循环来搞定,把这个文件放到连接中,用header函数来访问请求这个链接

    Antwort
    0
  • 巴扎黑

    巴扎黑2017-05-27 17:44:05

    我来推荐几个定时任务的库。用composer加载
    Dispatcher 基于Laravel的定时任务管理
    swoole-crontab 基于swoole的定时器程序,支持秒级处理
    jobby 一个 PHP 的定时任务管理器
    cronlingo Express crontabs as human friendly phrases
    没事的话可以去awesomes-php中去看
    看不懂英文我这里有一个备份也可以查看点击此处跳转

    Antwort
    0
  • StornierenAntwort