¿Qué ventajas ofrece cualquiera de los métodos para los archivos html, css y javascript que sirve un servidor LAMP? ¿Hay mejores alternativas?
El servidor proporciona información a una aplicación de mapas utilizando Json, por lo que un gran volumen de archivos pequeños.
Consulte también ¿Hay algún impacto en el rendimiento al elegir gzip en lugar de desinflar para la compresión http?
Respuestas:
La respuesta simple es no .
RFC 2616 define desinflar como:
El formato zlib se define en RFC 1950 como:
Entonces, algunos encabezados y una suma de verificación ADLER32
RFC 2616 define gzip como:
RFC 1952 define los datos comprimidos como:
CRC-32 es más lento que ADLER32
Entonces ... tenemos 2 mecanismos de compresión que usan el mismo algoritmo para la compresión, pero un algoritmo diferente para los encabezados y la suma de verificación.
Ahora, los paquetes TCP subyacentes ya son bastante confiables , por lo que el problema aquí no es Adler 32 vs CRC-32 que usa GZIP.
Resulta que muchos navegadores a lo largo de los años implementaron un algoritmo de desinflado incorrecto. En lugar de esperar el encabezado zlib en RFC 1950, simplemente esperaban la carga útil comprimida. Del mismo modo, varios servidores web cometieron el mismo error.
Entonces, a lo largo de los años, los navegadores comenzaron a implementar una implementación de desinflado de lógica difusa , intentan el encabezado zlib y la suma de comprobación de Adler, si eso falla, intentan la carga útil.
El resultado de tener una lógica compleja como esa es que a menudo se rompe. Verve Studio tiene una sección de prueba aportada por el usuario que muestra cuán grave es la situación.
Por ejemplo: deflate funciona en Safari 4.0 pero está roto en Safari 5.1, también siempre tiene problemas en IE.
Por lo tanto, lo mejor que puede hacer es evitar el desinflado por completo, el aumento de velocidad menor (debido a Adler 32) no vale el riesgo de cargas útiles rotas.
fuente
GZip es simplemente desinflar más una suma de verificación y encabezado / pie de página. Sin embargo, desinflar es más rápido , como aprendí por las malas.
fuente
Es probable que no pueda elegir desinflar como opción. Al contrario de lo que puede esperar mod_deflate no está usando deflate sino gzip. Entonces, aunque la mayoría de los puntos son válidos, es probable que no sea relevante para la mayoría.
fuente
Creo que no hay una gran diferencia entre deflate y gzip, porque gzip básicamente es solo un encabezado envuelto alrededor de deflate (ver RFC 1951 y 1952).
fuente
La razón principal es que la desinflación es más rápida de codificar que gzip y en un servidor ocupado que puede marcar la diferencia. Con páginas estáticas es una pregunta diferente, ya que pueden precomprimirse fácilmente una vez.
fuente
mod_deflate requiere menos recursos en su servidor, aunque puede pagar una pequeña penalización en términos de la cantidad de compresión.
Si está sirviendo muchos archivos pequeños, recomendaría realizar pruebas comparativas y pruebas de carga de sus soluciones comprimidas y sin comprimir; puede encontrar algunos casos en los que habilitar la compresión no generará ahorros.
fuente
No debería haber ninguna diferencia en gzip & deflate para la descompresión. Gzip simplemente se desinfla con unas pocas docenas de encabezado de bytes envuelto alrededor, incluida una suma de verificación. La suma de comprobación es la razón de la compresión más lenta. Sin embargo, cuando está precomprimiendo miles de millones de archivos, desea esas sumas de verificación como una comprobación de sanidad en su sistema de archivos. Además, puede utilizar herramientas de línea de comandos para obtener estadísticas en el archivo. Para nuestro sitio, estamos precomprimiendo una tonelada de datos estáticos (todo el directorio abierto, 13,000 juegos, autocompletado para millones de palabras clave, etc.) y Alexa nos clasifica un 95% más rápido que todos los sitios web. Búsqueda por fax. Sin embargo, utilizamos un servidor web propietario propio. Apache / mod_deflate simplemente no lo cortó. Cuando esos archivos se comprimen en el sistema de archivos, no solo recibe un golpe por su archivo con el tamaño mínimo de bloque del sistema de archivos, sino toda la sobrecarga innecesaria en la administración del archivo en el sistema de archivos que al servidor web le podría importar menos. Sus preocupaciones deben ser la huella total del disco y el tiempo de acceso / descompresión y, en segundo lugar, la velocidad para poder precomprimir estos datos. La huella es importante porque a pesar de que el espacio en disco es barato, desea tanto como sea posible para caber en la memoria caché.
fuente
En Ubuntu con Apache2 y el módulo de desinflado ya instalado (que es el predeterminado), puede habilitar la compresión de
desinflargzip en dos sencillos pasos:¡Y estás lejos! Encontré que las páginas que serví a través de mi conexión adsl se cargaban mucho más rápido.
Editar: según el comentario de @ GertvandenBerg, esto permite la compresión gzip, no desinflar.
fuente
si recuerdo correctamente
fuente