Palestra: Conectando +60k restaurantes: a saga arquitetural do iFood

Track: Solutions Track

Sala: Xangai

Horário: 11:50am - 12:35pm

Dia da semana: Quarta-feira

Nível: Intermediário - Avançado

Persona: Arquiteto(a), Desenvolvedor(a) Programador(a), Desenvolvedor(a) Sênior

Apresentação em Português

Compartilhe essa página no:

Pontos Principais

  • Erros e acertos arquiteturais no processamento de eventos de uma escala de 6 milhões para 17 milhões de pedido mensais em menos de um ano;
  • Como pensamos fora da caixa pra resolver um dos maiores problemas que tivemos que lidar nesse crescimento: polling de eventos;
  • Conheça como temos utilizado Ignite e Redis, tecnologias mais recentes, para suportar nossa operação e também como Erlang, uma tecnologia um pouco mais “antiga”, nos ajuda a manter a escala dos dias de hoje.

Resumo

A simplicidade de um clique para fazer um pedido de comida no iFood esconde uma complexa arquitetura para garantir que a entrega chegue corretamente na casa de quem pediu. O time Connection é um time de alta criticidade para essa solução: a cada um dos 17 milhões de pedidos mensais gerados no aplicativo, eventos são gerados e enviados para os mais de 60 mil restaurantes que, por sua vez, enviam uma série de outros eventos que precisam ser orquestrados e processados corretamente, comunicando-se com outros microsserviços dentro do iFood.

Nessa palestra serão apresentadas algumas das decisões acertadas e também as decisões equivocadas que tomamos ao longo do período de menos de um ano, construindo uma arquitetura de orquestração de eventos capaz de escalar de 6 milhões de pedidos mensais para os 17 milhões. Saiba como a quebra do nosso monolito em diferentes microsserviços, juntamente com a utilização de Ignite, um cache em memória SQL distribuído, e Redis, um single-threaded key-value cache, foram fundamentais nessa operação. E entenda também os porquês da utilização de Kinesis para receber eventos em tempo real não funcionou bem em nosso cenário. Para finalizar, vamos compartilhar como usamos IoT e repensamos os restaurantes para conseguir entregar 98% de todos os eventos em menos de 45 segundos.

Palestrante: Bruno Panuto

Desenvolvedor Backend Sênior no iFood

Técnico formado pelo Colégio Técnico de Campinas da Unicamp, gosta de desafios interessantes. Sempre foi um amante de programação no geral, mas backend sempre brilhou os olhos. Trabalhou desde softwares de processamento de pagamentos em C até front-end com React, passando por Go, Java e Elixir. Hoje, procurando desafios pelo menos uma ordem de magnitude maior. Nos tempos livres, gosta de tocar violão e programar.

Encontre mais informações sobre Bruno Panuto em

Tracks

Segunda-feira, 6 de maio

Terça-feira, 7 de maio

Quarta-feira, 8 de maio