более быстрый экспорт больших данных в laravel, чтобы избежать тайм-аутов - PullRequest
0 голосов
/ 29 марта 2019

Я должен создать отчет из базы данных с тысячами записей.Этот отчет должен создаваться ежемесячно, и иногда пользователь может захотеть получить отчет за 3 месяца.Уже в соответствии с текущими записями набор данных за месяц может достигать примерно 5000.

В настоящее время я использую vue-excel, что делает вызов API для Laravel API, и там API возвращает ресурс, который теперь экспортируетсявя-первенствовать.Ресурс не только возвращает данные модели, но и есть связанные наборы данных, которые мне также нужно получить.

Это для небольших наборов данных работает нормально, когда я выбираю около 3000 записей, но для чего-то большего, чем сервер, время ожидания сервера.

Я также пытался использовать laravel excel с учетом того, что проблема запроса фактически синхронизировала их, и оба заняли одинаковое количество времени, потому что laravel excel также отображал, чтобы получить мне отношения.

В общем, мой вопрос таков: есть ли лучший способ сделать это, чтобы получить эти данные быстрее и избежать тайм-аутов

1 Ответ

0 голосов
/ 30 марта 2019

просто поставьте это на начало функции

    ini_set(max_execution_time, 84000); //84000 is in seconds

это переопределит максимальное значение времени выполнения встроенного скрипта laravel.

...