Итак, у меня есть три сервера, и идея состояла в том, чтобы хранить все медиа (изображения, файлы, фильмы) на медиа-сервере. Я никогда не удосужился это сделать, но думаю, что, наверное, должен.
Итак, это три сервера:
WWW сервер
Сервер БД
Медиасервер
Посетители, очевидно, подключаются к WWW-серверу, и в настоящее время изменение размера и кэширования изображений выполняется на WWW-серверах, поскольку там хранятся исходные файлы. Так что идея для меня заключается в том, чтобы использовать функции изображения, которые у меня есть, которые выполняют всю композицию, изменение размера и объединение изображений, просто передают команду на медиа-сервер, который возвращает путь к готовому файлу.
Чего я не знаю, так это того, как обрабатывать такие функции, как file_exists () и вычислять размеры изображения, когда это необходимо, даже до того, как в управление вступит какое-либо управление изображениями. Могу ли я передать все эти команды на другой сервер через HTTP? Я думал о том, как сделать это следующим образом:
function image(##ARGS##){
if ($GLOBALS["media_host"] != "localhost"){
list ($src, $width, height) = file('http://$GLOBALS[media_host]/imgfunc.php?args=##ARGS##');
return "<img src='$src' height and width >";
}
.... do other stuff here
}
Я неправильно подхожу к этому? Есть ли лучший способ сделать это?