Я создаю базовый аналитический сервис, теоретически основанный на том, как работает Google Analytics, но вместо запроса фактического изображения я направляю запрос изображения на script, который принимает данные, а затем выводит образ. Поскольку браузеры будут запрашивать это изображение при каждой загрузке, каждая миллисекунда считается.
Я ищу наиболее эффективный способ для файла выводить gif файл из PHP script. До сих пор я создал 3 основных метода.
Есть ли более эффективный способ для вывода 1x1 GIF файла из PHP script? Если нет, то какой из них является наиболее эффективным и масштабируемым?
Три идентифицированных метода
Библиотеки для создания образов PHP
$im = imagecreatetruecolor(1, 1);
imagefilledrectangle($im, 0, 0, 0, 0, 0xFb6b6F);
header('Content-Type: image/gif');
imagegif($im);
imagedestroy($im);
file_get_contents
изображение с сервера и вывести его
$im = file_get_contents('raw.gif');
header('Content-Type: image/gif');
echo $im;
base64_decode
изображение
header('Content-Type: image/gif');
echo base64_decode("R0lGODdhAQABAIAAAPxqbAAAACwAAAAAAQABAAACAkQBADs=");
(У меня было то, что base64 был бы самым быстрым, но я понятия не имею, насколько ресурсоемкой является эта функция, и что file_get_contents, вероятно, будут масштабироваться слабее, поскольку он добавляет еще одно действие файловой системы.)
Для справки, GIF, который я использую, приведен здесь: http://i.stack.imgur.com/LQ1CR.gif
ИЗМЕНИТЬ
Итак, причина, по которой я обслуживаю этот образ, заключается в том, что моя библиотека аналитики строит строку запроса и присоединяет ее к этому запросу изображения. Вместо того, чтобы анализировать журналы, я направляю запрос на PHP script, который обрабатывает данные и отвечает изображением, так что браузер конечного пользователя не зависает или не выдает ошибку. Мой вопрос: как лучше всего служить этому изображению в пределах script?