O chefe de confiabilidade do site Photobox discute como o álbum de fotos e o site de presentes personalizados gerenciam uma arquitetura complexa de microsserviços
Por
- Cliff Saran,
Editor chefe
Publicados: 23 de novembro de 2022 11:22
Nos últimos anos, a Photobox tem feito uma jornada para unificar seus plataforma de comércio eletrônico. No início de 2022, a empresa se fundiu com a Albelli e, diz Alex Hibbitt, diretor de engenharia de confiabilidade do site da Photobox, espera construir uma base sólida para as diferentes marcas do grupo.
A TI do Photobox é baseada em um arquitetura de microsserviços, rodando na nuvem pública Amazon Web Services (AWS). Durante o fim de semana da Black Friday e da Cyber Monday de cada ano, o pico absoluto de negociação da empresa é de cinco a seis vezes sua atividade normal.
Os eventos de pico de compras ocorrem por um período prolongado devido à natureza dos negócios da Photobox. Os clientes que desejam comprar produtos personalizados baseados em fotos, como livros, calendários, impressos e presentes, carregam imagens digitais no site e, por um longo período de tempo, personalizam o layout do produto escolhido e, em seguida, procedem ao checkout.
Isso coloca significativamente mais pressão nas plataformas de back-end que executam o Photobox negócio, em comparação com outros varejistas onde a jornada do cliente da seleção do produto até o checkout ocorre em questão de minutos.
Monitorar todos os aspectos da plataforma é fundamental, mas quando Hibbitt ingressou no Photobox há quatro anos, cada equipe de desenvolvedores usava suas próprias ferramentas de monitoramento. “Quando entrei, tínhamos 10 ferramentas de monitoramento separadas”, diz ele.
Em termos de obter uma visão geral da confiabilidade da plataforma, ele diz que cada ferramenta cobre uma parte individual do quadro completo, que é um dos desafios de uma arquitetura de microsserviços. “Você quer dar às equipes a liberdade de escolher suas ferramentas, mas isso geralmente pode levar à proliferação de ferramentas em toda a organização, que foi o que aconteceu no Photobox”, diz ele.
De acordo com Hibbitt, isoladamente, uma ferramenta de observabilidade que envolve um microsserviço específico pode funcionar perfeitamente bem. “O desafio”, diz ele, “é quando você cruza os limites entre diferentes microsserviços”. Por exemplo, a jornada da experiência do cliente no Photobox abrange pelo menos três serviços front-end diferentes. Também requer mais ou menos uma dúzia de serviços de back-end.
Muitas vezes na engenharia de confiabilidade do site, a equipe analisa a experiência do cliente de ponta a ponta. Mas, como aponta Hibbitt, a jornada de um cliente no Photobox ocorre durante um período prolongado de tempo.
“Se você precisa construir um álbum de fotos, dedique seu tempo para criá-lo”, diz ele. “Você pode fazer isso em algumas horas, mas se realmente deseja criar algo especial, em que coloca muito amor e esforço na produção de um álbum de fotos, pode levar uma semana de trabalho, algumas horas cada night.”
Este é o desafio que o Photobox enfrenta quando se trata de observabilidade com equipes usando diferentes ferramentas. “Torna-se impossível acompanhar a jornada do cliente como esta, que dura um longo período de tempo em 10 ferramentas diferentes”, diz ele.
Foi isso que Hibbitt enfrentou quando experimentou sua primeira Black Friday no Photobox, quatro anos atrás. “Eu estava praticamente arrancando meus cabelos porque não conseguia abrir janelas suficientes para nossas diferentes ferramentas”, diz ele.
Sempre que precisava verificar um problema específico, como se um cliente levantasse um problema com o site, Hibbitt descobria que precisava usar as ferramentas de monitoramento que os desenvolvedores haviam implantado originalmente para observabilidade dos microsserviços que desenvolveram. Esse rastreamento manual da jornada do cliente seria impossível de escalar e é um problema que não pode ser resolvido simplesmente contratando mais engenheiros de confiabilidade do site.
“Você não poderia esperar que um engenheiro relativamente novo entendesse a jornada do cliente quando é tão desafiador instrumentar nossa pilha”, diz ele. “Você pode ter dados provenientes de uma ferramenta que são diferentes de outra ferramenta e não tem como comparar esses dados. É um problema de maçãs e laranjas.”
Olhando para o quadro geral
Photobox agora tem
introduziu o Dynatrace para fornecer padronização para observabilidade de seus microsserviços. Hibbitt diz que a ferramenta permite que o Photobox tenha uma abordagem comum para examinar diferentes microsserviços.
A empresa também está usando a inteligência artificial (IA) no Dynatrace para automatizar alertas quando um nível de limite na confiabilidade do site é violado.
“Não precisamos criar alertas personalizados e limites personalizados”, diz Hibbitt. “Davis, a IA da Dynatrace, é muito boa em entender automaticamente como é nossa linha de base para determinados serviços. Ele avalia as taxas de erro e o número de chamadas que passam por diferentes serviços para criar uma imagem do estado geral da plataforma Photobox.”
Um dos desafios que um engenheiro de confiabilidade de site enfrenta ao lidar com vários alertas é decidir quais áreas de degradação de desempenho priorizar. “Nossa abordagem é tentar tomar decisões com base em dados”, diz Hibbitt.
Ao se preparar para o pico na atividade de comércio eletrônico durante a Black Friday e a Cyber Monday, ele diz que o Photobox executa um teste de carga em 150% do volume de atividade que espera. “Aumentamos nosso site e vemos o que acontece. Fazemos isso ao vivo, por isso tem o potencial de impactar os clientes, mas somos muito cuidadosos em garantir a proteção da experiência do cliente”, diz Hibbitt.
A Dynatrace oferece ao Photobox a capacidade de medir em tempo real o que está acontecendo com os clientes enquanto eles carregam imagens e criam álbuns de fotos e outros presentes fotográficos. “O pico nos ajuda a realmente focar onde queremos otimizar as coisas”, diz Hibbitt. “Então, no caso desse pico, descobrimos que nosso serviço de loja estava começando a desacelerar, o que obviamente é bastante impactante para um cliente.”
Ao usar os dados de observabilidade do Dynatrace, o Photobox conseguiu entender o impacto que essa desaceleração estava causando. Dado que a equipe responsável pelo serviço da loja tinha uma carteira de trabalho completa, a Dynatrace permitiu que a equipe de engenharia do local demonstrasse o impacto desse problema específico. A equipe poderia então estimar quantos clientes seriam afetados, dando à empresa a capacidade de avaliar o impacto comercial e permitir que os tomadores de decisão priorizassem o trabalho necessário. Leia mais sobre ferramentas de desenvolvimento de software