Heim  >  Fragen und Antworten  >  Hauptteil

Importieren großer CSV-Dateien mithilfe von Cron-Jobs in Laravel

<p>Ich verwende <strong>Laravel 8</strong> und möchte <strong>Milliarden von Produktpreisen aktualisieren</strong>. Ich habe diesen <strong>Code hinzugefügt und er hat gut funktioniert</strong>, aber er war <strong>nicht effizient</strong> und er hat die <strong>Last auf dem Server erhöht. </p> <pre class="brush:php;toolbar:false;">try { $priceCsvs = PriceCsv::whereStatus(PriceCsv::PENDING)->get(); foreach ($priceCsvs as $price) { dump($price->name." wird gestartet"); $csvData = fopen($price->file_url, 'r'); $firstline = true; while (($data = fgetcsv($csvData, 555, ',')) !== false) { if (!$firstline && !empty($data)) { dump($data); } $firstline = false; } fclose($csvData); dump($price->name." is End"); } } Catch (Ausnahme $ex) { dump($ex->getMessage()); }</pre> <p><em><strong>Der Hauptpunkt ist: </strong></em>Gibt es eine Möglichkeit, die Eingabe aus einer <strong>CSV-Datei</strong> zu erhalten? Datei<strong> Ruhezustand nach 1000 Malen hinzufügen</strong>Was funktioniert. </p>
P粉024986150P粉024986150434 Tage vor506

Antworte allen(1)Ich werde antworten

  • P粉242126786

    P粉2421267862023-09-03 10:50:36

    如果您正在寻找安排工作,请查看

    任务调度

    基本上定义一些控制台(artisan)命令,然后在控制台内核文件中安排它们。调度程序使用 artisan 运行,建议每分钟运行一次命令(定义 cron 作业)。如果内核调度项定义与“php artisan Schedule:work”命令运行的分钟一致,那么您的作业将执行。

    Antwort
    0
  • StornierenAntwort