Dev aprende a falar "depende" e se torna desempregado pq a liderança quer que vc tome alguma decisão e eles não entendem os nuances de resolução de race condition e te contrataram justamente pra resolver o problema e não pra palestrar
vou aproveitar essa thread maravilhosa onde o @ljtfreitas listou alguns pontos do "pq kafka eh cagado pra mensageria".
não sou especialista em Kafka, LONGE disso, mas vou tentar explicar na perspectiva de um dev(a) e menos na perspectiva de alguém de infra.
diferentemente de um broker convencional, como RabbitMQ ou ActiveMQ, o Kafka abre mão da complexidade de gerenciar o estado das mensagens e garantias de entrega em prol de performance e escala; ele foi desenhado para ser um excelente "ingestor" de mensagens e não para trocar mensagens de forma segura (reliable) entre sistemas.
uma boa analogia aqui eh pensar que a maioria dos bancos NoSQL conseguem ser mais performáticos e escaláveis que um RDBMS pelo simples fato que eles 1) fazem 1 unica coisa e 2) abrem mão das propriedades e garantias ACID;
mas o que isso quer dizer afinal de contas?
quer dizer que se o Kafka NÃO gerencia o estado das mensagens e suas garantias de entrega então alguém tem que fazer isso! E esse alguém, meus amigos, é justamente as pontas da integração: producers e consumers.
e quem cuida destas pontas? você dev(a).
toda as responsabilidade de fazer o tracking das mensagens enviadas e consumidas e garantir o controle individual de cada mensagem em caso de sucesso, erro, retries, backoff, redelivery, DLQs, priorização, concorrência, locking, deduplication, scheduling, expiration (TTL), replies etc está sob responsabilidade do consumer e producer - sob sua responsabilidade meu caro dev(a) cansado.
você eh o responsável por implementar de alguma forma na sua aplicação estas caracteristicas oferecidas nativamente por brokers convencionais. Ignorar que por trás de cada uma delas existe garantias de entrega que um broker faz eh semelhante a ignorar garantias que uma transação em um RBDMS te dá - e a gente já sabe o que acontece quando fazemos isso, certo?
assumir que um Kafka funciona e te fornece as mesmas garantias de entrega de um broker convencional eh perigoso e provavelmente vai te gerar MUITA dor de cabeça.
enfim, dar uma volta no parquinho de mensageria com Kafka sem conhecer os percalços e tradeoffs desse tipo de comunicação e ter alguma ideia de como brokers convencionais resolvem tais problemas eh a pior coisa que vc pode fazer.
@rinhadebackend Usar cache nos clientes/limites e esquentar ele durante o start da aplicação. Salva tempo nas requests, se vc esquentar por demanda vai precisar bater 10 vezes no db e perder tempo nas requests de validação que são as primeiras.
1/ Switch to @Pulley by end of Jan and we will discount our cost by the balance of your existing cap table contract so you don't have to double pay.
Migrate with a few clicks and in less than a week.
Why make the switch? What makes Pulley different?
🚨 TUDO EM TODO O LUGAR AO MESMO TEMPO (158 prêmios) ultrapassou O SENHOR DOS ANÉIS: O RETORNO DO REI (101 prêmios) e agora é oficialmente o filme mais premiado da história! Os dados foram levantados pela pesquisa realizada pelo site IGN.
Fica o desafio então pros tecnologistas de direita, se algum destes quiser debater tecnologia comigo e tentar provar que eu não sou bom tecnicamente, estou aberto. Fazemos ao vivo, no YouTube. Mas vai ter que debater filosofia, sociologia e economia também.
VITÓRIA!!! 🙌🏽
A nossa pressão funcionou e o prefeito de São Paulo acaba de anunciar em uma reunião comigo e com representantes da sociedade civil a gratuidade do transporte no segundo turno. Bora votar, meu povo!
Had a great conversation this morning with @jaredfriedman at @ycombinator for @startupschool
Excited to come back to share share a few lessons from being a 3x YC alum who's spend a decade of working on many startups that have failed.
Thread below👇
0/ @pulley raised $40M led by @rabois at @foundersfund!
We're excited to keep working with @stripe, @eladgil, @avichal, @ycombinator, and the many angels below.
We are launching a new *free* tier, Pulley Seed, to help more startups navigate equity👇
@_JoaoVitorinoJR @sseraphini Faça perguntas que vc pode ir evoluindo de acordo com nível do entrevistado, por exemplo, perguntar sobre otimização, vc pode partir do DB, cache, paralelismo, monitoração, arquitetura, etc.
Nesse post https://t.co/X54ZhKI096 do @wbrunom tem boas dicas.
@franklinjavier O trial é meio diferente msm. Como eu peguei um trampo PJ, fizeram um contrato de duas semanas.
Eu achei legal que foi período para avaliar a cultura da empresa e eles a minha.
Foi tipo período de experiencia da CLT com um pouco mais de risco rs.