Laravel медленное изображение реагирует - PullRequest
0 голосов
/ 15 января 2019

На одной из моих страниц я отображаю несколько изображений.Я получаю изображения через маршрут, который связан с методом контроллера.Вот так:

В поле зрения:

(inside foreach)
<img width="100" src="viewBook/get/...." >

В методе контроллера:

$img = Image::make('images/test.jpg');
        return $img->response('jpg');

Но это такмедленный подход.Когда я показываю, скажем, 13 изображений, это занимает почти 10 секунд.И когда я проверяю через Chrome DevTools, большую часть времени потребляется как «холостой».И, конечно, они загружаются один за другим.

Как я могу сделать это быстрее?Может быть, параллельный ответ или увеличение пропускной способности ngingx?

Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 16 января 2019

Очень сложно улучшить время отклика.Это зависит от различных причин, таких как сервер, скорость интернета, местоположение, размер ваших изображений и т. Д.

Для таких случаев можно использовать такие сервисы, как imagix (https://www.imgix.com/), и это хорошо сработало для нас. Это намного дешевле, чем настройка других параметров для улучшения времени отклика.

0 голосов
/ 15 января 2019

Полагаю, вы используете пакет Intervention Image.Однако нет необходимости помещать все изображения через этот пакетЕсли вы это сделаете, пакет обработает изображение, и это займет много времени.

Если вы просто хотите вернуть изображение, вы можете сделать это с помощью встроенного файла ответа .

return response()->file('images/test.jpg');

Это загрузит файл прямо из файловой системы и будет намного быстрее.

...