Vacaciones 2014: Detrás de escena con Bazaarvoice Engineering

Publicado: 2015-01-07

Bazaarvoice Engineering se construyó sobre la base de empoderar a nuestros talentosos equipos para que sean dueños de todos los aspectos de la prestación de servicios a los clientes, de principio a fin. Para nuestro mayor evento del año, el fin de semana del Black Friday/Cyber ​​Monday: cada equipo de ingeniería construye sus cargas de tráfico proyectadas, su plan de pruebas de carga, su plan de congelación de código, y cada uno es responsable de la ejecución y el informe de resultados para la preparación. Esta preparación comienza hace más de 7 meses desde el Black Friday.

La obra comienza en abril.

Mientras muchas personas piensan en su viaje a Disneyland o a la playa, Bazaarvoice Engineering comienza los preparativos para nuestro mayor evento del año: Black Friday / Cyber ​​Monday. Hay muchos detalles para trabajar y mucha preparación en la tienda. Aquí es cuando comienzan nuestros esfuerzos de planificación de sistemas a gran escala, ya que reevaluamos la capacidad general del sistema a la luz del crecimiento proyectado del tráfico en los sitios de comercio electrónico y de marca en toda nuestra red. Nuestros equipos analizan patrones de tráfico detallados, crecimiento del tráfico web, crecimiento del contenido generado por el usuario, capacidad de almacenamiento y más. Además de nuestros propios sistemas, evaluamos los sistemas de terceros con los que nos integramos y tenemos reuniones con sus equipos de liderazgo para ayudarlos a comprender las mejoras necesarias antes de que llegue el gran tráfico de vacaciones.

Partiendo de la evaluación inicial, está claro que tenemos una serie de proyectos importantes que completar para estar listos para las vacaciones que se avecinan. Entonces, mientras el verano de Texas comienza a calentarse en mayo, iniciamos nuestras reuniones semanales de planificación del Black Friday y los equipos se ponen a trabajar. Existen importantes proyectos de infraestructura para ampliar lo que llamamos "Pantalla", los sistemas que atienden las solicitudes de front-end de 500 millones de visitantes únicos al mes. Hay más trabajo por hacer para mejorar aún más las fuentes de datos que enviamos a nuestros clientes todos los días. Hay nuevas herramientas de prueba de carga para crear partes nuevas de nuestra plataforma. Se planean nuevos tableros en tiempo real para mejorar nuestra capacidad de visualizar rápidamente el estado actual de todos nuestros servicios. Finalmente, existen procesos y canales de comunicación mejorados tanto antes como durante la temporada alta que deben planificarse e implementarse a través de la empresa y hacia nuestros clientes. ¡Cancele esas vacaciones!

La calma antes de la tormenta

Con un tráfico récord proyectado para 2014 y con una cantidad significativa de nuevos servicios en producción, estaba claro que necesitábamos una capacidad de prueba de carga ampliada. Construimos un nuevo entorno de prueba virtual masivo en el que todos los equipos implementarán y ampliarán sus servicios, tal como lo haremos en producción cuando llegue el momento. Las nuevas herramientas de prueba pueden simular con mucha precisión los patrones de tráfico reales de los compradores y, como una manguera contra incendios, subimos el volumen y probamos todos los servicios juntos. Además de las pruebas de carga, cada equipo participa en el "Día del juego", donde eliminamos intencionalmente los servicios específicos para garantizar que podamos detectar, reaccionar y recuperarnos de fallas en todo el sistema. Cada equipo publica todos sus resultados y firma: estamos listos.

A medida que se acerca el Black Friday, en las próximas semanas ya estamos poniendo en marcha nuevos servidores virtuales en la nube. Una cosa que aprendimos el año pasado, incluso si tiene capacidad reservada en la nube, si intenta activar los servidores justo antes del Black Friday, es posible que todavía no haya capacidad disponible. Incluso mientras disfrutamos del almuerzo de Acción de Gracias de nuestro equipo la semana anterior, ya vemos períodos de duplicación de tráfico.

"Día de juego"

El Día de Acción de Gracias es una época maravillosa del año, llena de familia, comida, fútbol y, para el equipo de ingeniería de Bazaarvoice, gráficos de rendimiento del sistema, horarios de llamadas, alertas de buscapersonas y salas de chat. Command central es nuestra "Sala de incidentes" en nuestra herramienta HipChat. Mientras el resto del país disfruta del pavo y las patadas iniciales, nuestro día de juego es en línea. Aparentemente, el país disfruta un poco de compras en línea con su fútbol. Haz que muchas compras.

Nuestro monitoreo está dando sus frutos, detectamos muchos problemas y ajustamos la capacidad antes de que se vean los problemas que enfrenta el cliente. El Día de Acción de Gracias y la sala de chat está llena de ingenieros de todos los equipos listos en caso de que ocurra un problema. Cada hora, las solicitudes por segundo parecen alcanzar un nuevo récord. E, inevitablemente, hay un problema en la noche de Acción de Gracias en uno de los muchos servicios, pero gracias al diseño de nuestro sistema, la tasa de errores es <.1%. Aún así, los ingenieros trabajan hasta después de la medianoche del Día de Acción de Gracias para resolver completamente el problema.

A medida que avanza el fin de semana festivo, vemos que el tráfico crece a más de 6 veces el volumen normal, y cuando el tráfico a nuestra plataforma de big data llega a 30 000 por segundo, todos nos emocionamos. En la sala de chat, nuestro administrador de incidentes publica gráficos de nuestros tableros periódicamente y el equipo chatea con saludos festivos y gifs entretenidos para mantener el ambiente relajado. El Black Friday está aquí y es más grande que nunca.

Cada hora, enviamos correos electrónicos de estado de salud a la empresa para aquellos que no están en la sala de chat y podemos ver un aumento significativo en las visitas a la página y el tráfico de API en el mismo período del año pasado. Algunos problemas continúan surgiendo durante el fin de semana, pero muy pocos son visibles para el cliente y los equipos responden rápidamente, agregando recursos de servicio, activando nuevos servicios o aumentando los límites. El equipo de ingeniería trabaja con el equipo de soporte de DevOps y nuestro excelente equipo de servicio al cliente para asegurarse de que el proceso de comunicación planificado previamente funcione y que todos estén informados en el camino. Como decimos en BV: ¡un equipo, un sueño! Mientras tanto, el tráfico a nuestra plataforma de big data supera las 37 000 solicitudes por segundo y finalmente alcanza un máximo de 50 000 rps.

384 millones de páginas vistas

Para cuando llega el lunes cibernético, el aumento del tráfico se siente como la nueva norma. El equipo está físicamente de vuelta en la oficina, pero se nota que el estrés de las "vacaciones" se ve atenuado por el alivio de haberlo hecho. Entonces, ¿qué hicimos exactamente? Bueno, solo en el Black Friday, servimos 384 millones de páginas vistas a más de 73 millones de visitantes únicos. Vimos más de 222 millones de visitantes únicos durante este período de vacaciones, lo que representa un aumento del 38 % con respecto al año pasado, y servimos 7700 millones de impresiones generales, lo que representa un sorprendente aumento del 42 % con respecto al año pasado.

En nuestro interminable deseo de mejorar, ya tuvimos una retrospectiva y pensamos en ideas de cómo podemos mejorar para el próximo año, pero estoy muy orgulloso de cómo este equipo planeó, preparó, ejecutó, respondió y entregó en un servicio de clase mundial para nuestros clientes. Verdaderamente, este es el equipo más centrado en el cliente y más dedicado que he tenido el privilegio de liderar en mi carrera, y ya esperamos grandes cosas por venir en 2015.