1
resposta

Quando usar o async await em APIs RESTful

Olá!

O instrutor ao longo do curso adiciona várias funções assíncronas na API. Existe alguma boa prática a ser seguida para quando devemos implementar as funções como assíncronas em APIs e quando não devemos?

Obrigado!

1 resposta

Oi, João, tudo bem?

As funções assíncronas são muito bem vindas requisição de dados a uma API, pois as funções síncronas tem uma questão importante a ser avaliada do porquê usá-la:

  • Quando essa requisição é enviada, a resposta é bloqueada até todo o processo de requisição seja feito, e assim, finalizada, para que outras requisições sejam feitas, ou seja, para que uma nova requisição seja feita, a anterior precisa ser finalizada, tornando assim, nossas comunicação entre cliente-servidor síncrona.

  • Já na requisição assíncronas, podemos enviar mais de uma requisição simultaneamente e cada requisição será retornada quando estiver finalizada, ou seja, quando cada requisição for finalizada, receberemos as respectivas respostas, não precisando esperar que a primeira seja finalizada, para que seja feita a requisição seguinte, e assim, por diante.

Então, as requisições assíncronas são essenciais em consumos de API's por trabalhar muito bem com a comunicação cliente-servidor tornando esse processo menos oneroso e mais escalável seja para o servidor (pois o consumo de dados pode crescer ao longo do projeto), seja para o cliente, protagonistas nessas conversa.

Mas há casos em que requisições assíncronas pode ser não tão indicadas, um cenário clássico, é quando temos um banco de dados gigante e, que, fazer requisições simultaneamente pois o servidor irá atender a uma demanda grande de requests e assim sobrecarregando o servidor.

Nesse artigo aqui do nosso Blog da Alura: https://www.alura.com.br/artigos/async-await-no-javascript-o-que-e-e-quando-usar trata desse tema com bastante detalhe e reforça os conceitos dados em aula e aqui.

Qualquer dúvida, é só falar!