1
resposta

Composição de APIs

Boa tarde, visto que a API faz com que um recurso da web se torne integrável, gostaria de uma opinião em relação à seguinte decisão arquitetural:

Tenho uma API principal 1 que fornece a maioria dos recursos para um determinado Client, inclusive autenticação e gerenciamento de sessão. Porém, uma equipe de desenvolvimento criou uma API2 com um recurso independente (Central de Mensagens, a saber) que não faz nada além de enviar mensagens. O Client que consome a minha API1, precisará enviar mensagens através da API2. O que fazer?

  1. O Client consumir diretamente as duas APIs independentemente (neste caso, mesmo com o usuário logado na API1, o Client precisará enviar Login e Senha pra API2 sempre);
  2. A API1 consumir a API2, fazendo com que o Client consuma apenas a API1;
  3. Gerar um pacote Nuget da API2 e instalar na API1;

Obs: Várias outras aplicações também poderão consumir a API2

Na minha opinião a opção 2 seria a melhor, pois a API2 continuará independente e disponível para várias outras aplicações. E a API1 continuará sendo o ponto principal do Client, gerenciando a sessão do usuário, etc. Porém, vejo uma requisição HTTP a mais neste cenário (Client -> API1 -> API2), e gostaria de saber se isso impactaria muito no desempenho das requisições.

Claro que cada projeto tem suas especificidades, mas gostaria de saber de um modo geral, a opinião de vocês em relação a esse cenário de composição de APIs.

1 resposta
O post foi fechado por inatividade. Para continuar o assunto, recomendamos criar um novo tópico. Bons Estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software