¿Qué es la compresión del sitio web?

Lo que quieren decir es usar GZIP en el servidor web Apache. Esto es muy parecido a archivar / comprimir archivos en su computadora usando algo como ZIP: hace que los archivos sean más pequeños y, por lo tanto, más rápidos de enviar / recibir a través de Internet. En este caso, las páginas reales se comprimirán, se enviarán más rápido y luego se descomprimirán en el navegador del visitante. Es un método de optimización estándar para la velocidad del sitio web.

Pero, realmente no ayudará. Lo que estás notando es que tu sitio se ralentiza, no las transferencias del contenido. Estás usando WordPress, por ejemplo; que se volverá más lento cuando agregue más funcionalidad (módulos, widgets), más contenido, más usuarios y más visitantes.

Sus principales opciones son realmente;

  1. Obtenga un alojamiento más rápido (un proveedor de alojamiento más rápido, o un servidor dedicado, o un mejor plan con su proveedor);
  2. Optimice su sitio (minimice la cantidad de módulos / widgets, use un tema más eficiente, etc.); optimizaciones menores incluyen el uso de GZIP, pero casi no tendrá un impacto notable;
  3. Use el almacenamiento en caché (hay varios módulos para eso en WordPress) o un CDN: ¿Qué tan importante para la velocidad es su proveedor de alojamiento compartido si usa un CDN?

Obviamente, su proveedor no le recomendará que cambie a otro proveedor (más rápido); probablemente no tendrán tiempo para observar de cerca cómo optimizar su sitio, por lo que simplemente sugirieron la solución simple.

La compresión HTTP es una capacidad que puede integrarse en servidores web y clientes web para mejorar la velocidad de transferencia y la utilización del ancho de banda.
Los datos HTTP se comprimen antes de enviarse desde el servidor: los navegadores compatibles anunciarán qué métodos son compatibles con el servidor antes de descargar el formato correcto; los navegadores que no admiten el método de compresión compatible descargarán datos sin comprimir. Los esquemas de compresión más comunes incluyen gzip y Deflate, sin embargo, la IANA mantiene una lista completa de los esquemas disponibles. Además, terceros desarrollan nuevos métodos y los incluyen en sus productos, por ejemplo, el esquema Google Shared Dictionary Compression for HTTP (SDCH) implementado en el navegador Google Chrome y utilizado en los servidores de Google.

Hay dos tipos de compresión. Compresión de activos y compresión de flujo. La compresión de activos se realiza en una tubería de activos de sitios web, significa minimizar CSS y JavaScript, y hacer una optimización de tres pasos en las imágenes. La compresión de flujo está comprimiendo el flujo en sí con un algoritmo de compresión como tar.gz. Esto lo hace el servidor web (como Apache) y el navegador lo descomprime según el tipo MIME devuelto.

Se conoce como compresión gzip. El sitio web, los archivos CSS, las imágenes, etc. se comprimen y envían para ahorrar ancho de banda y aumentar la velocidad.
Los servidores Apache tienen algo llamado Apache mod_deflate que maneja esto.
Habilítelo, es útil y reduce el tiempo promedio de carga de la página.

Reducirá el tamaño de los datos transferidos desde su servidor a los clientes (funciona mejor con archivos de texto) pero se almacenarán con el mismo tamaño en el servidor.

Puede ir un paso más allá minimizando sus archivos CSS / Javascript antes de subirlos a su servidor y (como dijo Josh Begleiter) haciendo una optimización de 3 pasadas en las imágenes y muestreando archivos de video.

Si reduce el tamaño de sus archivos, reduce el consumo de ancho de banda, por lo que se cargará rápidamente para sus usuarios (y consumirá menos datos si observa la red móvil).

Personalmente, uso el compilador Google Closure para la compresión de JavaScript y SASS para el CSS.

Las otras respuestas que explican la compresión gzip son muy buenas.

Descubrir por qué un sitio web se carga lentamente es un proyecto en sí mismo. Puede comenzar con el complemento llamado Yslow que analizará su sitio y le dará algunas sugerencias.

Una de las principales sugerencias es siempre reducir la cantidad de archivos separados que son necesarios. En general, los sitios web tienen archivos separados para css, archivos separados para cada imagen, a veces archivos separados para html incluidos, y archivos separados para cada programa javascript. Reducir la cantidad de archivos separados ayudará incluso más que la compresión gzip (que también debe usarse porque es fácil).

Y como se mencionó, una red de entrega de contenido, como cloudflare, también ayudará. Ver Yslow.

Puede comprimir el contenido en el lado del servidor antes de enviarlo.

Pero, creo que su sitio puede acelerar mucho si carga las imágenes de manera perezosa. Hay muchas bibliotecas que lo ayudarán a hacer esto, como esta:

Un complemento muy liviano para imágenes de carga diferida

Al no cargar todos esos recursos de imagen en la carga de la página, la página debería renderizarse más rápidamente.