Se trata de cuestiones absolutamente incomparables.
Cambiar el tamaño de las imágenes sobre la marcha, de hecho, es como ejecutar un ataque DoS en su propio servidor. Cambiar el tamaño de una imagen habitual requiere más CPU y RAM que servir una solicitud habitual para el script php. Eso YA tiene un gran impacto en el rendimiento. Sin embargo, se muestra una miniatura habitual no solo, sino en números. Entonces, al mostrar solo una página de galería, está creando docenas de procesos de carga pesada, aumentando la carga del servidor por un factor de diez o más.
Prueba rápida y sucia para demostrar mis palabras: Vamos a tratar de cambiar el tamaño relativamente pequeño, de 1,3 megapíxeles imagen
$ /usr/bin/time --format="%MK mem %Es CPU time" /usr/bin/convert angry_birds_1280x800.jpg -resize 100x100 thumb.jpg
10324K mem 0:00.10s CPU time
Nos tomó 0,1s, así, mostrar vistas previas de imágenes 10 se comen una segundo entero de tu tiempo de CPU. Si bien la página de la galería PHP correctamente escrita tomará alrededor de 0,01s. Por lo tanto, con su cambio de tamaño sobre la marcha, está aumentando la carga del servidor por un factor de 100.
Lo mismo con la memoria. ¡Cada proceso de cambio de tamaño comerá no menos de 10M de memoria (para cambiar el tamaño de un archivo de imagen de 100k!) Con una suma total de 100M. Mientras que el límite de memoria habitual para el script PHP es simplemente 8M y rara vez se alcanza.
Éstos son los números de la vida real.
Una cosa un tanto divertida relacionada con este problema:
Exactamente el mismo usuario PHP que fácilmente tirar 1000000s de ciclos de CPU al mismo tiempo siendo increíble celosa de sobra 1 o 2! No es una forma de hablar, aquí hay un ejemplo de lo que estoy hablando:
A similar question de alguien, cuya gran preocupación al mismo tiempo en algo tan insignificante como speed difference between Constants, Variables or Variable Arrays. Y que recientemente run into allowed memory size exhausted problem, como si tal desastre no fuera suficiente.
Hay un montón de preguntas y respuestas en este sitio, debatiendo la diferencia de velocidad en nanosegundos de cualquier operación, respondida con dignidad inagotable, ejecutando pruebas de millones de iteraciones para mostrar una diferencia absolutamente insignificante entre operaciones de varios ciclos de CPU cada una.
Y al mismo tiempo hay preguntas como esta: con respecto a la diferencia enorme e incomparable en términos de rendimiento entre dos enfoques, que se asemeja al autor.
Ese es el problema con el usuario promedio de PHP y este sitio.
Lo primero simplemente no tiene medida para contar cosas reales desde las microscópicas.
Sin embargo, estos últimos no tienen ningún mecanismo para la verificación de la cordura de las preguntas; todos respondieron con igual entusiasmo, incluso si dos preguntas contradigan entre sí (y ambas con sentido común).
buena pregunta, podríamos pensar que el almacenamiento de imágenes en miniatura es malo porque crea imágenes duplicadas y también datos inútiles cuando copias de seguridad de tu sitio web. – baptx