Я динамически генерирую графику в моем контроллере:
если файл не существует (уникальный имя файла) затем сгенерируйте графику и сохраните ее
return RedirectResponse ($ url)
(3. Я также пробовал:
$fp = fopen($url, "rb");
$str = stream_get_contents($fp);
fclose($fp);
$response = new Response($str, 200);
$response->headers->set('Content-Type', 'image/png');
return $response;
)
Мне нужно, чтобы он генерировал динамически юзербары для пользователей [на этом графике некоторые текст будет автоматически обновляться, если на моих сайтах будут внесены некоторые изменения].
Поэтому для меня важно, чтобы этот скрипт работал быстро и не убивал мой сервер / коммутатор. Для этого я сделал кеш, в котором все сгенерировано графика хранится.Но у меня проблема со скоростью, решения, которые я описал выше, довольно медленные, когда я тестировал его в Chrome с помощью инструмента разработчика (F12), он показывает мне, что оба решения (2. и 3.) занимает около ~ 1 секунды (когда одна и та же графика [без контроллеров и т. Д. Просто перенаправляет URL-адрес в .png] загружает 44 мс).
Так что, если только для меня это занимает около ~ 1 секунды на графику, то если, например, 1000 пользователей будут генерировать в Я думаю, что в то же время этот рисунок может замедлить работу моего сайта.
Помогите, пожалуйста, знаете ли вы более быстрые способы сделать это?
PS. Перенаправление для меня не самое главное, потому что я бы предпочел оставить url как есть, например smth / username / userbar / insted of smth / img / userbars / cache / blabla.png. Но если будет намного быстрее, то выдержу :).
РЕДАКТИРОВАТЬ: Для ясности: я не ищу решения для кеширования изображений, моя проблема в том, что возврат изображений через контроллер (уже сгенерированные изображения, только с ftp) занимает около 1 секунды, тогда как обычно, если вы это делаете, например
<img src="direct_url_to_png">
занимает около 44 мсек.