Gravatar de Armonth

Mejorar por 5 el tiempo de carga de tu web

En acidrop han escrito una entrada llamada Improve website load time by 500% with 3 lines of code.

La idea no es nueva: si se tienen muchas peticiones provocadas por múltiples ficheros CSS y Javascript el tiempo de carga aumenta. Para evitarlo se deben:

  • Hacer menos peticiones HTTP.
  • Añadir cabeceras “expires”.
  • Comprimir tus ficheros (gzip, deflate).
  • Minimizar la cantidad y el tamaño del HTML, CSS y Javascript.

En el artículo han desarrollado una clase en PHP que añadiendo al principio dos líneas de código:

require_once('class.compressor.php'); //Incluye la clase. La ruta completa puede ser necesaria.
$compressor = new compressor('css,javascript,page');

Y una al final de la página:

$compressor->finish();

Te une todos los javascripts y css en un fichero único y comprimido. Con ello obviamente los tiempos mejoran sólo si usamos CSS/JS.

Siempre nos queda la opción de hacer la unión de los ficheros a mano, pero no siempre es fácil o agradable la tarea.

Enlaces de SigT relacionados

10 Comentarios (feed)

  1. Gravatar de manolo manolo nos comenta:

    Entonces para usarlo basta con poner las dos líneas dentro de etiquetas

    Martes, 22 de Enero/2008 @ 13:56

  2. Gravatar de Forenaits Forenaits nos comenta:

    Me vendría bastante bien mientras busco un hueco para tirar abajo el blog y hacerlo desde cero porque tiene tanta porquería en el código que no hay manera de curarlo ya xD

    Martes, 22 de Enero/2008 @ 14:52

  3. Gravatar de filex filex nos comenta:

    En mi caso baje algo de tiempo, mejorando en algo pero no mucho.

    Martes, 22 de Enero/2008 @ 19:56

  4. Gravatar de J.F. J.F. nos comenta:

    Bastante interesante.
    Un saludo.

    Martes, 22 de Enero/2008 @ 22:04

  5. Gravatar de Jep Jep nos comenta:

    Esto tambien comprime los javascripts externos en uno de sólo cómo google analytics y statcounter?

    Jueves, 24 de Enero/2008 @ 4:44

  6. Gravatar de Armonth Armonth nos comenta:

    Jep no he hecho la prueba aunque en teoría no debería hacerlo ya que Google necesita ejecutar (otra vez en teoría) ese javascript desde su servidor para poder recopilar los datos.

    Jueves, 24 de Enero/2008 @ 10:07

  7. Gravatar de Jep Jep nos comenta:

    Por lo que tengo entendido no es necesario que se execute el script externamente, algunos para que no haya “delay”, lo guardan localmente.

    Jueves, 24 de Enero/2008 @ 17:07

  8. Gravatar de Camilo Camilo nos comenta:

    armonth esto es compatible con el wp-cache?, para ponerlo en wp se editan el header y el footer?

    gracias, espero respuesta muy bueno tu sitio.

    Jueves, 24 de Enero/2008 @ 18:17

  9. Gravatar de Armonth Armonth nos comenta:

    Camilo: aunque no he hecho pruebas (el poco tiempo del que dispongo no me lo permite) si lo metes dentro de un mclude se cargará dinámicamente y como el CSS/JS no es tocado por WP-Cache no debería dar ningún problema.

    Jueves, 24 de Enero/2008 @ 21:25

  10. Gravatar de Camilo Camilo nos comenta:

    pongo esto al principio del header.php

    y esto al final en el footer.php
    finish(); ?>

    y me sale el siguiente error
    Fatal error: Call to a member function finish() on a non-object i

    Sábado, 26 de Enero/2008 @ 4:42

No seas tímido, da tu opinión

Sé respetuoso con los demás, la diferencia de opiniones enriquece la discusión, los comentarios bajo ciertas circunstancias pueden ser moderados y requerir aprobación.