Conte-me mais sobre o trabalho com Kafka: como exatamente ocorreu a deduplicação de mensagens?
Golang
Que tipos de replicação existem (síncrona e assíncrona)? Como funciona a replicação síncrona e quais são os seus custos?
Fale-nos sobre a composição da equipa, as áreas de responsabilidade dos serviços e o ciclo de lançamento.
Por que foi escolhido gRPC em vez de REST? Havia requisitos específicos de desempenho?
Caso abstrato: o serviço falha (OOM kill), você não vê erros, mas no pod você vê que o último status indica falta de memória. Qual seria a sequência de ações para diagnosticar e estabilizar o serviço?
Era responsável pela operação do produto? O suporte era da sua equipe? Alertas e métricas eram enviados para você?
Por que são necessárias transações em bancos de dados?
Adicionar mais consumidores em caso de grande atraso no Kafka ajudará? Em que casos ajudará e em quais não? E se houver 16 partições e 2 consumidores?
Pode acontecer que as mensagens estejam distribuídas de forma desigual pelos partitions? Como combater isso?
Guardaste todas as mensagens do Kafka numa tabela separada? Qual foi o sentido disso, o Kafka não era suficiente?
O que fizeste no teu último emprego? Qual era o projeto?
Tinha containers sidecar nas instâncias? O que é um sidecar?
Interagiu diretamente com o Kubernetes?
Qual é a diferença entre EXPLAIN e EXPLAIN ANALYZE? Por que não se deve usar EXPLAIN ANALYZE em produção?
O que fazia nesse caso quando o alerta disparava ao atingir 5000 RPS? Como determinava se era um aumento real na carga ou um problema no sistema?
Por que fazer commit manual do offset em vez de usar o auto-commit?
Quais foram exatamente os indicadores de capacidade? Quantas solicitações por segundo normalmente e no pico?
Como você realizou a escalabilidade dos consumidores Kafka? Com base em quais critérios?
Se a base de dados estiver indisponível e fizer tentativas, você não processará infinitamente as mesmas mensagens? Todos os 500 irão para DLQ?
Fale-me sobre si.