Rendimientos en sitios de e-commerce: Herramientas y mecanismos

¿Puede influir la plataforma de alojamiento contratada en el rendimiento de una plataforma de e-commerce? Sebastián Rodríguez desgrana punto por punto qué aspectos pueden afectar al buen funcionamiento del negocio y cómo. Independientemente de los aspectos de estéticos, de definición de negocio e incluso de lenguaje de programación utilizado (joomla, Drupal,…), las características de los servidores utilizados, su configuración y los servicios complementarios seleccionados pueden influir en los resultados finales.

Impactos en el e-commerce

  • SEO: Entre los muchos parámetros que considera Google a la hora de posicionar una web, se encuentra la velocidad de carga de la página. Más que premiar a las webs rápidas, se penaliza las páginas lentas. Aunque no hay datos oficiales, se considera que puede ser un 1%. Podemos conocer nuestra puntuación a través de Google Webmasters Tools.
  • Experiencia de usuario: Puede ser que en momentos puntuales o de forma permanente el usuario experimente una navegación lenta. Esto se traduce normalmente en tasas de rebote altas y tasas de conversión bajas.
  • Disponibilidad: más allá de una navegación lenta existe un estadio más negativo para el usuario que es la falta de servicio. Algunos clubs de compra o outlets sufren grandes picos de demanda (hora de oferta, anuncios, menciones en medios masivos,…), convirtiendo un posible ‘momento álgido’ en una perdida de oportunidades de negocio.
  • Coste de infraestructura: la configuración actual de muchos datacenter basados en cloud computing permite a los gestores de e-commerc pagar sólo por aquellos recursos consumidos. Esto puede ayudar a conocer mejor el comportamiento de los usuarios y planificar inversiones futuras.

Conceptos clave en la Gestión y optimización de la capacidad: Conócete a ti mismo

Nuestra plataforma de comercio online estará alojada en un servidor que estará formado por distintas capas. Cada una de ellas tiene sus funciones y características. Por su naturaleza algunas de ellas tienden a saturarse antes que las otras, dependiendo del perfil de público, del tipo de aplicaciones, etc. Por ello nuestros técnicos o proveedores deben monitorizar constantemente las distintas capas de aplicación.

Para optimizar la capacidad de respuesta de nuestros servidores es imprescindible conocer nuestra arquitectura y como interactúan nuestros usuarios en ella. Se puede trabajar en 4 niveles:

  • Arquitectura por capas: nuestra arquitectura de servidores está formada por distintas capas (html, firewall, bas de datos,…) algunos tienden a saturarse antes que otros.  Para detectar los cuellos de botella es necesario realizar pruebas de stress o de carga.
  • Patrón de carga: Analizando los históricos de carga podremos ver cual es el patrón de carga más habitual (puntas de tráfico previstas, días con más afluencia,…).
  • Por tipo de petición: es necesario saber que tipo de contenido ofrece nuestra página. Contenidos estáticos o dinámicos.
  • Perfil de usuario: por último saber conocer con que patrones actúan nuestros usuarios ayudará a potenciar las áreas más críticas. Algunas herramientas como Google Analytics aportan información básica al respecto.

 

Factores que determinan la capacidad y el rendimiento

A la hora de desarrollar nuevos proyectos, es necesario tener presente:

  • Programación eficiente
  • Economía inteligente de los recursos utilizados (media)
  • Plataforma sólida y madura
  • Configuración optimizada de la plataforma
  • Capacidad de los recursos físicos (ancho de banda, CPU, memoria, velocidad de disco, etc.)

Si la plataforma ya esta operativa pero su rendimiento no es el esperado, se pueden aplicar una serie de medidas de control que no ayudaran a conocer mejor nuestro servidor, y a tomar las medidas correctivas más apropiadas:

  • Pruebas de stress: simulan un ataque masivo de usuarios con los perfiles más habituales. Permite saber donde están los cuellos de botella de nuestra página.
  • Profiling: audita el rendimiento del código en funcionamiento y nos da un visión de toda la transacción (incluyendo consultas a base de datos).
  • Caching: introduciendo las páginas y datos más habituales en la cache de nuestro balanceador de carga o  servidores podemos agilizar el proceso de carga de nuestras webs.
  • Balanceador de carga: como su nombre indica, el balanceador distribuye la carga según la disponibilidad de los servidores. No es en sí un acelerador, pero hace posibles arquitecturas horizontales, evitando saturaciones.
  • Red de contenidos: red de servidores repartidos por el mundo que se sincronizan con el servidor del cliente y actúan como una caché intermedia. Permite distribuir grandes contenidos (video, audio,…) globalmente de forma rápida i eficaz.
  • Monitorización de aplicaciones: ejecuta los mismos pasos que un hipotético usuario para obtener una visión de la disponibilidad y el rendimiento. Complementa la monitorización tradición (componente por componente).

Nexica proporciona amplio abanico de soluciones y servicios que permiten mejorar el rendimiento de su plataforma de de e-commerce.

Resumen de la conferencia de Sebastián Rodríguez ‘Mejora del rendimiento de plataformas de E-commerce’ que tuvo lugar el 2 de marzo en el marco de la feria ‘E-commRetail Show 2011’ ante un numeroso público formado por responsables y futuros responsables de proyectos de e-commerce.