Optimización de rendimiento en PrestaShop 9: servidor, aplicación y frontend

PrestaShop 9 Rendimiento Optimizacion

El rendimiento de una tienda online tiene impacto directo en la conversión: cada segundo adicional de carga puede reducir la tasa de conversión hasta un 7%. PrestaShop 9, con su nuevo core Symfony y el tema Hummingbird 2.0, ofrece mejoras de rendimiento significativas respecto a versiones anteriores, pero exprimir al máximo el rendimiento requiere una estrategia integral que abarca servidor, aplicación y frontend.

Mejoras de rendimiento en PrestaShop 9

Core Symfony optimizado

  • Symfony HttpKernel: Gestión de peticiones más eficiente que el legacy dispatcher.
  • Doctrine ORM: Consultas a base de datos optimizadas con lazy loading y batch processing.
  • Caché de configuración: El contenedor de servicios de Symfony se compila y cachea en producción.
  • Event Dispatcher: Sistema de hooks más eficiente que reduce overhead.

Hummingbird 2.0

  • Sin jQuery: Vanilla JavaScript reduce el peso del frontend significativamente.
  • CSS modular: Solo se carga el CSS necesario para cada página.
  • Lazy loading nativo: Imágenes y componentes se cargan solo cuando son visibles.
  • Core Web Vitals: Diseñado para cumplir con LCP, FID y CLS óptimos.

Optimización del servidor

PHP 8.1+ y OPcache

  • PrestaShop 9 requiere PHP 8.1 mínimo. PHP 8.2/8.3 ofrecen mejoras adicionales de rendimiento.
  • Configurar OPcache correctamente: opcache.memory_consumption=256, opcache.max_accelerated_files=20000, opcache.validate_timestamps=0 en producción.
  • Activar JIT compilation para cargas CPU-intensive.

MySQL/MariaDB

  • Buffer pool: innodb_buffer_pool_size al 70-80% de la RAM disponible.
  • Query cache: Evaluar según patrón de consultas (en MariaDB).
  • Índices: Verificar que las consultas más frecuentes usan índices. Herramientas: EXPLAIN, slow query log.
  • Conexiones persistentes: Reducir overhead de apertura de conexiones.

Nginx vs Apache

Nginx ofrece mejor rendimiento para servir assets estáticos y manejar conexiones concurrentes. Configurar:

  • Compresión gzip/brotli para HTML, CSS, JS, SVG.
  • Caché de assets estáticos con headers de expiración largos.
  • HTTP/2 o HTTP/3 para multiplexación de peticiones.
  • FastCGI cache para páginas que no cambian frecuentemente.

Redis/Memcached

  • Usar Redis para sesiones PHP (más rápido que archivos).
  • Redis como caché de objetos de Symfony.
  • Considerar Redis para caché de consultas SQL frecuentes.

Optimización de PrestaShop

Configuración del back office

  • CCC (Combine, Compress, Cache): Activar en Parámetros avanzados → Rendimiento.
  • Smarty/Twig cache: Activar caché de plantillas y forzar compilación solo en desarrollo.
  • Debug mode: Desactivar siempre en producción.
  • Profiling: Desactivar el profiler de Symfony en producción.

Módulos

  • Desactivar módulos no utilizados (cada módulo activo añade hooks que se ejecutan).
  • Evaluar el impacto de cada módulo en el tiempo de carga (usando el módulo de rendimiento o New Relic).
  • Evitar módulos que hacen consultas SQL pesadas en cada page load.

Catálogo

  • Optimizar imágenes: WebP como formato, dimensiones adecuadas, compresión.
  • Regenerar thumbnails cuando cambias de tema.
  • Indexar productos y atributos correctamente.
  • Considerar Elasticsearch para tiendas con catálogos grandes (+10.000 productos).

CDN y caché de página completa

  • Cloudflare: CDN gratuito con caché de assets, compresión Brotli, y Page Rules para caché de página.
  • Varnish: Full page cache para páginas de catálogo (exige configuración cuidadosa con cookies y carrito).
  • Redis Page Cache: Alternativa a Varnish, más sencilla de configurar.

Monitorización

  • Google PageSpeed Insights: Medir Core Web Vitals.
  • GTmetrix: Análisis detallado de cascada de carga.
  • New Relic / Blackfire: APM para identificar cuellos de botella en PHP.
  • MySQL slow query log: Identificar consultas lentas.

¿Necesitas optimizar tu PrestaShop?

En Keliam realizamos auditorías de rendimiento y optimización de tiendas PrestaShop: servidor, aplicación, frontend y caché. Contacta con nosotros.

Scroll al inicio