SlideShare a Scribd company logo
1 of 29
El tamaño importa
Alejandro Domínguez
www.ayudajoomla.com
¿Por qué es importante el
tiempo de carga del sitio web?
• Experiencia de usuario
• SEO
• Consumo de datos limitado de los
móviles
Escenario de pruebas
YSlow
PageSpeed Insights
GTmetrix
Pingdom
Webpagetest
Herramientas
• Aplicardeformagenéricaalaplantillaeindividualmentealasseccionesmásimportantesdel
sitioweb
Análisis con Pingdom tools 1/2
Análisis con Pingdom tools 2/2
Análisis con Webpagetest 1/2
¿Qué podemos mejorar?
Las características del servidor influyen
• Hosting compartido o VPS
• Memoria RAM
• CPU - Cuantos procesadores y cuantos cores por procesador
• Tipo de disco duro - SSD o HDD
• Consumo de recursos de los otros sitios web que están alojados en el
mismo servidor
Caché de Joomla
• ¿Qué es la caché de Joomla?
• Tipos de caché
• Caché global y caché de módulos
• Caché de página (plugin)
•Si un usuario está logueado, la caché no se activan para el
•Extensiones de tercero: JotCache
Caché a nivel de global
• Configuración global >> Pestaña sistema >> Configuración de la caché
• Opciones
• Tipo
• Progresiva – Una caché para cada Usuario (+ espacio)
• Conservacional – Una cache para todos los usuarios
• Gestor de la caché: Archivo / Memcache (Depende del servidor)
• Duración de la cache
Caché a nivel de módulo
• Pestaña avanzada de cada módulo.
• Módulos del core lo traen de serie.
• Módulos de terceros puede que no tengan esta opción
Caché de página
• Extensiones >> Plugins y buscar el plugin System – Page caché
Caché del navegador
• Usando el archivo .htaccess podemos indicarle al navegador el tiempo de
vida de archivos CSS, JS, imágenes, etc.
• La primera vez que el usuario entra al sitio web descarga todos los archivos.
Para las siguientes visitas no descarga esos archivos, sino que los coge de
la caché de su navegador.
Caché del navegador
Añadir estas líneas en el archivo .htaccess
<IfModule mod_expires.c>
FileETag MTime Size
ExpiresActive On
ExpiresDefault "access plus 1 seconds"
ExpiresByType text/html "access plus 600 seconds"
ExpiresByType text/css "access plus 604800 seconds"
ExpiresByType text/javascript "access plus 216000 seconds"
ExpiresByType application/xhtml+xml "access plus 600 seconds"
ExpiresByType application/javascript "access plus 216000 seconds"
ExpiresByType application/x-javascript "access plus 216000 seconds"
ExpiresByType image/x-icon "access plus 2592000 seconds"
ExpiresByType image/jpeg "access plus 2592000 seconds"
ExpiresByType image/png "access plus 2592000 seconds"
ExpiresByType image/gif "access plus 2592000 seconds"
</IfModule>
• ETag: Informa al navegador que las imágenes que ha descargado no hace falta volverlas a
descargar
• Expires: Parecido a ETag pero especificando los tipos de archivos
Compresión con GZip
• El sitio web se envía al navegador comprimido en gzip. El navegador se
encarga de extracción y visualización
• Muchos servidores soportan la compresión GZip. ¡Ojo! Si el servidor no la
soporta puede dejar caído el sitio web.
• Configuración global >> Pestaña servidor >> Configuración del servidor
Compresión con Deflate
• Es una alternativa a la compresión Gzip.
Añadir estas líneas al archivo .htaccess
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
</IfModule>
Importante
Usar la compresión Gzip o la compresión Deflate, pero no ambas a la vez
Efectos de la compresión y la caché
Reducir el tamaño de las imágenes
• Calidad: En archivos .jpg una calidad del 60% se puede visualizar
correctamente y ocupa bastante menos
• Si usas Photoshop  Guardar para web y dispostivos
• Eliminar metadatos (Programa que lo generó, ubicación gps, información de
la cámara de fotos, …)
• Usar el tamaño adecuado
• Sprites en las plantillas (Cuidado con el responsive)
• Lazy loading
• Herramientas online
• Smush.it
• TinyPNG
• TinyJPG
• Kraken.io
• Compressor.io
¿Qué opina Gtmetrix de nuestras imágenes?
Optimizar archivos CSS y JS
• Extensión: JCH Optimize
• Combinar archivos CSS y JS
• Combinar imágenes en un sprite
• Comprimir archivos en gzip
• Excluir archivos que no combinan correctamente
• Añadir defer a los archivos javascript
• Optimizar imágenes
Después de usar JCH Optimize
Usar un CDN (Content Delivery Network)
• Conjunto de servidores utilizados para servir contenidos estáticos
(imágenes, css, js, documentos, videos, etc…)
• Eliminación de cuellos de botella
• Algunos CDNs: MaxCDN, Akamai, Amazon CloudFront, CloudFlare
• Extensiones: CDN for Joomla (NoNumber) o JomCDN (CorePHP)
Optimizar módulos para dispostivos móviles
• Se suele utilizar CSS para esconder módulos en la vista de móvil, tablet o pc
 Carga contenido que no se está utilizando
• La extension Advanced Module Manager permite excluir módulos en función
del navegador
En resumen, ¿Qué puedo mejorar?
• Servidor del sitio web
• Reducir el tamaño del sitio web
• Reducir el número de solicitudes HTTP
• CDN
• Caché de navegador
• Compresión Gzip o Deflate
• Imágenes
• Librerías Javascript
• Archivos CSS
• Extensiones no usadas o poco usadas
• Caché de Joomla
Y añado… ojo con los retardos que generan los botones de Social Media
¿Realmente son necesarios en tu proyecto?
alejandro@ayudajoomla.com
@ayudajoomla y @alejandro_df
¡Muchas gracias!
www.jugmalaga.com
¿Preguntas?

More Related Content

Similar to El tamaño importa - JoomlaDay Sevilla 2015

Optimizando Sitios Web
Optimizando Sitios WebOptimizando Sitios Web
Optimizando Sitios Web
Grupo Mediabox
 
C:\fakepath\optimizacion
C:\fakepath\optimizacionC:\fakepath\optimizacion
C:\fakepath\optimizacion
Gonzalo C.
 
Html5 - El futuro de la web
Html5 - El futuro de la webHtml5 - El futuro de la web
Html5 - El futuro de la web
Joan Fernández
 

Similar to El tamaño importa - JoomlaDay Sevilla 2015 (20)

Los mejores trucos para aumentar la velocidad en joomla!
Los mejores trucos para aumentar la velocidad en joomla!Los mejores trucos para aumentar la velocidad en joomla!
Los mejores trucos para aumentar la velocidad en joomla!
 
Martesclass GTmetrix
Martesclass GTmetrixMartesclass GTmetrix
Martesclass GTmetrix
 
Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?
Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?
Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?
 
WPO para proyectos WooComerce
WPO para proyectos WooComerceWPO para proyectos WooComerce
WPO para proyectos WooComerce
 
Optimizando Sitios Web
Optimizando Sitios WebOptimizando Sitios Web
Optimizando Sitios Web
 
Mejores practicas para acelerar sitios web
Mejores practicas para acelerar sitios webMejores practicas para acelerar sitios web
Mejores practicas para acelerar sitios web
 
Adrián Garrido - WPO para WordPress.pptx
Adrián Garrido - WPO para WordPress.pptxAdrián Garrido - WPO para WordPress.pptx
Adrián Garrido - WPO para WordPress.pptx
 
Charla betabeers optimización y rendimiento en Wordpress - Marcos Ramajo
Charla betabeers optimización y rendimiento en Wordpress - Marcos RamajoCharla betabeers optimización y rendimiento en Wordpress - Marcos Ramajo
Charla betabeers optimización y rendimiento en Wordpress - Marcos Ramajo
 
Rendimiento y velocidad, acelera tu sitio WordPress
Rendimiento y velocidad, acelera tu sitio WordPressRendimiento y velocidad, acelera tu sitio WordPress
Rendimiento y velocidad, acelera tu sitio WordPress
 
High performance Web Sites
High performance Web SitesHigh performance Web Sites
High performance Web Sites
 
Rendimiento y velocidad en WordPress
Rendimiento y velocidad en WordPress Rendimiento y velocidad en WordPress
Rendimiento y velocidad en WordPress
 
Despliegue de aplicaciones OS en entornos Cloud Computing con Bitnami- OpenEx...
Despliegue de aplicaciones OS en entornos Cloud Computing con Bitnami- OpenEx...Despliegue de aplicaciones OS en entornos Cloud Computing con Bitnami- OpenEx...
Despliegue de aplicaciones OS en entornos Cloud Computing con Bitnami- OpenEx...
 
WPO - Murcia Meetup Day #MMD17
WPO - Murcia Meetup Day #MMD17WPO - Murcia Meetup Day #MMD17
WPO - Murcia Meetup Day #MMD17
 
Optimiza WordPress y a correr - WordCamp Cantabria 2015 - @DarioBF
Optimiza WordPress y a correr - WordCamp Cantabria 2015 - @DarioBFOptimiza WordPress y a correr - WordCamp Cantabria 2015 - @DarioBF
Optimiza WordPress y a correr - WordCamp Cantabria 2015 - @DarioBF
 
C:\fakepath\optimizacion
C:\fakepath\optimizacionC:\fakepath\optimizacion
C:\fakepath\optimizacion
 
Html5 - El futuro de la web
Html5 - El futuro de la webHtml5 - El futuro de la web
Html5 - El futuro de la web
 
Performance en Drupal 7
Performance en Drupal 7Performance en Drupal 7
Performance en Drupal 7
 
Los mejores trucos y prácticas para configurar drupal
Los mejores trucos y prácticas para configurar drupalLos mejores trucos y prácticas para configurar drupal
Los mejores trucos y prácticas para configurar drupal
 
Backbeam
BackbeamBackbeam
Backbeam
 
Msdn Te Invita A Ser Parte De UXity
Msdn Te Invita A Ser Parte De UXityMsdn Te Invita A Ser Parte De UXity
Msdn Te Invita A Ser Parte De UXity
 

Recently uploaded (7)

TIPOS DE LA PSICOPATOLOGÍA DE LA PERCEPCIÓN.pdf
TIPOS DE LA PSICOPATOLOGÍA DE LA PERCEPCIÓN.pdfTIPOS DE LA PSICOPATOLOGÍA DE LA PERCEPCIÓN.pdf
TIPOS DE LA PSICOPATOLOGÍA DE LA PERCEPCIÓN.pdf
 
12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf
 
Guia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdfGuia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdf
 
PPT-HISTORIA-6°-ABC.pptxjjjjjjjjjjjjjjjjjjjjjj
PPT-HISTORIA-6°-ABC.pptxjjjjjjjjjjjjjjjjjjjjjjPPT-HISTORIA-6°-ABC.pptxjjjjjjjjjjjjjjjjjjjjjj
PPT-HISTORIA-6°-ABC.pptxjjjjjjjjjjjjjjjjjjjjjj
 
Las redes sociales en el mercado digital
Las redes sociales en el mercado digitalLas redes sociales en el mercado digital
Las redes sociales en el mercado digital
 
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
 
Unidad V. Disoluciones quimica de las disoluciones
Unidad V. Disoluciones quimica de las disolucionesUnidad V. Disoluciones quimica de las disoluciones
Unidad V. Disoluciones quimica de las disoluciones
 

El tamaño importa - JoomlaDay Sevilla 2015

  • 1. El tamaño importa Alejandro Domínguez www.ayudajoomla.com
  • 2. ¿Por qué es importante el tiempo de carga del sitio web? • Experiencia de usuario • SEO • Consumo de datos limitado de los móviles
  • 9. Las características del servidor influyen • Hosting compartido o VPS • Memoria RAM • CPU - Cuantos procesadores y cuantos cores por procesador • Tipo de disco duro - SSD o HDD • Consumo de recursos de los otros sitios web que están alojados en el mismo servidor
  • 10. Caché de Joomla • ¿Qué es la caché de Joomla? • Tipos de caché • Caché global y caché de módulos • Caché de página (plugin) •Si un usuario está logueado, la caché no se activan para el •Extensiones de tercero: JotCache
  • 11. Caché a nivel de global • Configuración global >> Pestaña sistema >> Configuración de la caché • Opciones • Tipo • Progresiva – Una caché para cada Usuario (+ espacio) • Conservacional – Una cache para todos los usuarios • Gestor de la caché: Archivo / Memcache (Depende del servidor) • Duración de la cache
  • 12.
  • 13. Caché a nivel de módulo • Pestaña avanzada de cada módulo. • Módulos del core lo traen de serie. • Módulos de terceros puede que no tengan esta opción
  • 14.
  • 15. Caché de página • Extensiones >> Plugins y buscar el plugin System – Page caché
  • 16. Caché del navegador • Usando el archivo .htaccess podemos indicarle al navegador el tiempo de vida de archivos CSS, JS, imágenes, etc. • La primera vez que el usuario entra al sitio web descarga todos los archivos. Para las siguientes visitas no descarga esos archivos, sino que los coge de la caché de su navegador.
  • 17. Caché del navegador Añadir estas líneas en el archivo .htaccess <IfModule mod_expires.c> FileETag MTime Size ExpiresActive On ExpiresDefault "access plus 1 seconds" ExpiresByType text/html "access plus 600 seconds" ExpiresByType text/css "access plus 604800 seconds" ExpiresByType text/javascript "access plus 216000 seconds" ExpiresByType application/xhtml+xml "access plus 600 seconds" ExpiresByType application/javascript "access plus 216000 seconds" ExpiresByType application/x-javascript "access plus 216000 seconds" ExpiresByType image/x-icon "access plus 2592000 seconds" ExpiresByType image/jpeg "access plus 2592000 seconds" ExpiresByType image/png "access plus 2592000 seconds" ExpiresByType image/gif "access plus 2592000 seconds" </IfModule> • ETag: Informa al navegador que las imágenes que ha descargado no hace falta volverlas a descargar • Expires: Parecido a ETag pero especificando los tipos de archivos
  • 18. Compresión con GZip • El sitio web se envía al navegador comprimido en gzip. El navegador se encarga de extracción y visualización • Muchos servidores soportan la compresión GZip. ¡Ojo! Si el servidor no la soporta puede dejar caído el sitio web. • Configuración global >> Pestaña servidor >> Configuración del servidor
  • 19. Compresión con Deflate • Es una alternativa a la compresión Gzip. Añadir estas líneas al archivo .htaccess <IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/plain AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/xml AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE application/xml AddOutputFilterByType DEFLATE application/xhtml+xml AddOutputFilterByType DEFLATE application/rss+xml AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE application/x-javascript </IfModule> Importante Usar la compresión Gzip o la compresión Deflate, pero no ambas a la vez
  • 20. Efectos de la compresión y la caché
  • 21. Reducir el tamaño de las imágenes • Calidad: En archivos .jpg una calidad del 60% se puede visualizar correctamente y ocupa bastante menos • Si usas Photoshop  Guardar para web y dispostivos • Eliminar metadatos (Programa que lo generó, ubicación gps, información de la cámara de fotos, …) • Usar el tamaño adecuado • Sprites en las plantillas (Cuidado con el responsive) • Lazy loading • Herramientas online • Smush.it • TinyPNG • TinyJPG • Kraken.io • Compressor.io
  • 22. ¿Qué opina Gtmetrix de nuestras imágenes?
  • 23. Optimizar archivos CSS y JS • Extensión: JCH Optimize • Combinar archivos CSS y JS • Combinar imágenes en un sprite • Comprimir archivos en gzip • Excluir archivos que no combinan correctamente • Añadir defer a los archivos javascript • Optimizar imágenes
  • 24. Después de usar JCH Optimize
  • 25. Usar un CDN (Content Delivery Network) • Conjunto de servidores utilizados para servir contenidos estáticos (imágenes, css, js, documentos, videos, etc…) • Eliminación de cuellos de botella • Algunos CDNs: MaxCDN, Akamai, Amazon CloudFront, CloudFlare • Extensiones: CDN for Joomla (NoNumber) o JomCDN (CorePHP)
  • 26.
  • 27. Optimizar módulos para dispostivos móviles • Se suele utilizar CSS para esconder módulos en la vista de móvil, tablet o pc  Carga contenido que no se está utilizando • La extension Advanced Module Manager permite excluir módulos en función del navegador
  • 28. En resumen, ¿Qué puedo mejorar? • Servidor del sitio web • Reducir el tamaño del sitio web • Reducir el número de solicitudes HTTP • CDN • Caché de navegador • Compresión Gzip o Deflate • Imágenes • Librerías Javascript • Archivos CSS • Extensiones no usadas o poco usadas • Caché de Joomla Y añado… ojo con los retardos que generan los botones de Social Media ¿Realmente son necesarios en tu proyecto?
  • 29. alejandro@ayudajoomla.com @ayudajoomla y @alejandro_df ¡Muchas gracias! www.jugmalaga.com ¿Preguntas?