Laravel에서 cron 작업을 사용하여 대용량 CSV 파일 가져오기
P粉024986150
P粉024986150 2023-09-02 20:12:27
0
1
516
<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>
P粉024986150
P粉024986150

모든 응답(1)
P粉242126786

배치직을 찾고 있다면 확인해보세요

작업 예약

기본적으로 일부 콘솔(artisan) 명령을 정의한 다음 콘솔 커널 파일에 예약합니다. 스케줄러는 artisan을 사용하여 실행되며 1분마다 명령(cron 작업 정의)을 실행하는 것이 좋습니다. 커널 일정 정의가 "php artisan Schedule:work" 명령이 실행되는 순간과 일치하면 작업이 실행됩니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿