Está a ver a documentação do Apigee e do Apigee Hybrid.
Veja a documentação do
Apigee Edge.
Os sistemas de back-end executam os serviços aos quais os proxies de API acedem. Por outras palavras, são o motivo fundamental da própria existência das APIs e da camada de proxy de gestão de APIs.
Qualquer pedido de API encaminhado através da plataforma Apigee percorre um caminho típico antes de atingir o back-end:
- O pedido tem origem num cliente, que pode ser qualquer coisa, desde um navegador a uma app.
- Em seguida, o pedido é recebido pela gateway do Apigee.
- É processado no gateway. Como parte deste processamento, o pedido é transmitido a vários componentes distribuídos.
- Em seguida, o gateway encaminha o pedido para o back-end que responde ao pedido.
- A resposta do back-end percorre o caminho inverso exato através do gateway do Apigee de volta para o cliente.
Na prática, o desempenho dos pedidos de API encaminhados através do Apigee depende do Apigee e dos sistemas de back-end. Neste antipadrão, vamos focar-nos no impacto nos pedidos de API devido a sistemas de back-end com mau desempenho.
Antipattern
Consideremos o caso de um back-end problemático. Estas são as possibilidades:
Back-end com tamanho inadequado
O desafio de expor os serviços nestes sistemas de back-end através de APIs é que são acessíveis a um grande número de utilizadores finais. Do ponto de vista empresarial, este é um desafio desejável, mas algo que tem de ser resolvido.
Muitas vezes, os sistemas de back-end não estão preparados para esta procura adicional dos respetivos serviços e, consequentemente, têm um tamanho inferior ao necessário ou não estão otimizados para uma resposta eficiente.
O problema com um back-end "de tamanho inadequado" é que, se houver um pico de pedidos de API, os recursos, como a CPU, a carga e a memória, nos sistemas de back-end vão ficar sobrecarregados. Isto acabaria por fazer com que os pedidos da API falhassem.
Back-end lento
O problema com um back-end ajustado incorretamente é que demoraria muito tempo a responder a quaisquer pedidos que lhe fossem dirigidos, o que levaria a um aumento das latências, a tempos limite prematuros e a uma experiência do cliente comprometida.
A plataforma Apigee oferece algumas opções ajustáveis para contornar e gerir o back-end lento. No entanto, estas opções têm limitações.
Impacto
- No caso de um back-end com um tamanho inadequado, o aumento do tráfego pode levar a pedidos falhados.
- No caso de um back-end lento, a latência dos pedidos aumenta.
Prática recomendada
- Use a colocação em cache para armazenar as respostas de modo a melhorar os tempos de resposta da API e reduzir a carga no servidor de back-end.
- Resolva o problema subjacente nos servidores de back-end lentos.