Laravel에서 cron 작업을 사용하여 대용량 CSV 파일 가져오기
<p>저는 <strong>Laravel 8</strong>을 사용하고 있으며 <strong>수십억 개의 제품 가격을 업데이트하고 싶습니다</strong>. 이 <strong>코드를 추가했는데 잘 작동했지만<strong>효율적이지 않았고</strong>서버의 부하가 늘어났습니다</strong> </p>
<pre class="brush:php;toolbar:false;">{를 시도해보세요
$priceCsvs = PriceCsv::whereStatus(PriceCsv::PENDING)->get();
foreach($priceCsvs를 $price로) {
dump($price->name.'이 시작되었습니다.');
$csvData = fopen($price->file_url, 'r');
$firstline = 사실;
while (($data = fgetcsv($csvData, 555, ',')) !== false) {
if (!$firstline && !empty($data)) {
덤프($data);
}
$firstline = 거짓;
}
fclose($csvData);
dump($price->name."은 끝입니다");
}
} 잡기(예외 $ex) {
dump($ex->getMessage());
}</pre>
<p><em><strong>요점은 다음과 같습니다. </strong></em><strong>CSV 파일</strong> 또는 다른 파일에서 입력을 얻을 수 있는 방법이 있습니까? ;strong> 1000회 후에 수면을 추가하세요</strong>효과가 있습니다. </p>