DEV Community

Francisco Zanfranceschi
Francisco Zanfranceschi

Posted on

[Desafio] - 10 Desafios Simples de System Design: Resolução 3/9 (Transformar um Processamento Síncrono de uma API em Assíncrono)

Conteúdo original em https://twitter.com/zanfranceschi/status/1641096795853066240


Ei dev,

Discussão sobre a resolução do Desafio 3/9 dos 10 Desafios Simples de System Design que postei recentemente.

"Transformar um Processamento Síncrono de uma API em Assíncrono"

Image

https://twitter.com/zanfranceschi/status/1638232590812585985


Esse desafio é interessante e relativamente comum. É uma abordagem que pode ter algumas coisa como finalidade:

  • Melhorar performance e escalabilidade;
  • Um caminho para transformar monolitos em microsserviços;
  • Separação de responsabilidades; e etc.

Esse é um assunto/desafio que já escrevi algumas vezes sobre. Então, em vez de me repetir aqui, vou apontar alguns conteúdos relacionados.


Essa thread aqui basicamente discute uma abordagem pra resolver esse desafio pelo viés da escalabilidade falando sobre prós e contras.

https://twitter.com/zanfranceschi/status/1587431299458813952


Um conceito super importante para entender nesse desafio/área é sobre (des)acoplamento e indireção.

https://twitter.com/zanfranceschi/status/1504516518264164360


Esse desafio aqui poderia ser resolvido com a introdução de processamento assíncrono.

https://twitter.com/zanfranceschi/status/1579279644720738304


Outro desafio em que o processamento assíncrono poderia ser um candidato para resolução.

https://twitter.com/zanfranceschi/status/1572256034340868097


Uma forma bem usual para criar soluções de processamentos assíncronos é através de tópicos e filas. E com isso, os conceitos de dead-letter e retry são essenciais.

https://twitter.com/zanfranceschi/status/1522554964534435840


Por fim, essa thread – que basicamente foi minha estréia de criação de conteúdo no Twitter – é um desafio para que você implemente uma solução (já dada) de processamento assíncrono. Vale para quem for iniciante no assunto.

https://twitter.com/zanfranceschi/status/1501583683685425159


É isso! Espero que tenha curtido e muito obrigado por ter lido até aqui.

Top comments (0)