Conteúdo original nessa thread do Twitter
Ei dev,
Fora do contexto do Batman você sabe o que é Robin? Na verdade, Round Robin ou round-robin?
Round Robin é um algoritmo de distribuição mais legal que o Batman.
Cola mais pra você arrepiar no próximo churrasco e mandar a resenha certa sobre o Robin.
cc @sseraphini
↓
Round-robin tem tudo a ver com divisão igualitária e não é papo de política social, não.
Pode ser encontrado desde CPU scheduling, até message brokers, até Kafka, até load balancers, até DNS, até uma mamãe águia alimentando seus dois filhotinhos (essa última eu inventei).
Como sou o louco dos exemplos não poderia ser diferente aqui.
Imagine um load balancer pra uma API. Na verdade um cluster de APIs com 3 nós atrás desse load balancer.
Se o load balancer estiver configurado no modo round-robin, ele irá distribuir as requisições de forma circular e sem prioridade.
Ou seja:
- 1ª req. / nó 1
- 2ª req. / nó 2
- 3ª req. / nó 3
- 4ª req. / nó 1
- 5ª req. / nó 2
- 6ª req. / nó 3
...e assim por diante.
Middlewares de mensagens/streaming também funcionam assim por padrão.
Imagine um cenário com 2 consumidores conectados em uma mesma fila.
O natural é que as mensagens sejam distribuídas de forma justa entre os consumidores conectados à fila.
Ou seja:
- 1ª msg. / consumidor 1
- 2ª msg. / consumidor 2
- 3ª msg. / consumidor 1
- 4ª msg. / consumidor 2
... e assim por diante.
E ainda por cima, se um novo consumidor ou nó de API for adicionado ao cluster, esse novo elemento passará a receber também requisições ou mensagens.
Ah, mencionei sobre distribuição justa. Às vezes, você também encontrará o termo "fair distribution" sendo usado para round-robin.
Se o conceito ainda estiver meio confuso, assista ao episódio do Pica-Pau em que há aquela divisão desonesta de comida. É a mesma coisa, só que de forma honesta!
(Procure por "UM PRA VC UM PRA MIM, DOIS PRA VC DOIS PRA MIM" no YouTube.)
Esse algoritmo também pode ser usado em CPUs e até DNSs.
Por falar em DNS, o que você acha que aconteceria com as requisições para o site Mamãe Águia com a política de round-robin configurada como nessa imagem?
Fácil demais, né?
(Vai lá e abafa com o time de infra.)
Se você leu até aqui, dá um abraço apertado, vai! 🤗
Obrigado demais pela moral!
Top comments (1)
Parabéns pelo texto!