Laravelでcronジョブを使用して大きなCSVファイルをインポートする
P粉024986150
P粉024986150 2023-09-02 20:12:27
0
1
440

Laravel 8 を使用しており、何十億もの商品の価格を更新したいと考えています。この コードを追加したところ、正常に動作しましたが、 効率的ではなく、サーバーの 負荷が増加しました

試してください { $priceCsvs = PriceCsv::whereStatus(PriceCsv::PENDING)->get(); foreach ($priceCsvs as $price) { dump($price->name." が開始されました"); $csvData = fopen($price->file_url, 'r'); $firstline = true; while (($data = fgetcsv($csvData, 555, ',')) !== false) { if (!$firstline && !empty($data)) { ダンプ($data); } $firstline = false; } fclose($csvData); dump($price->name." は終了です"); } } catch (\Exception $ex) { dump($ex->getMessage()); }

ポイントは次のとおりです:CSV ファイル またはその他のファイルから入力を取得する方法はありますか< ;strong> 1000 回後に睡眠を追加うまくいきました。

P粉024986150
P粉024986150

全員に返信 (1)
P粉242126786

人材紹介の仕事をお探しの場合は、

をご覧ください。

タスクのスケジュール設定

基本的には、いくつかのコンソール (アーティザン) コマンドを定義し、コンソール カーネル ファイルでスケジュールします。スケジューラは、artisan を使用して実行され、コマンド (cron ジョブの定義) を 1 分ごとに実行することをお勧めします。カーネルのスケジュール定義が「phpArtisan Schedule:work」コマンドの実行時と一致していれば、ジョブが実行されます。

いいねを押す+0
    最新のダウンロード
    詳細>
    ウェブエフェクト
    公式サイト
    サイト素材
    フロントエンドテンプレート
    私たちについて 免責事項 Sitemap
    PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!