Capacidade de uma instância de gerenciamento de API do Azure
APLICA-SE A: Desenvolvedor | Básico | Básico v2 | Padrão | Standard v2 | Premium | Premium v2
O Gerenciamento de API fornece métricas do Azure Monitor para detectar o uso da capacidade do sistema, ajudando você a solucionar problemas de gateway e tomar decisões informadas se deseja dimensionar ou atualizar uma instância de Gerenciamento de API para acomodar mais carga.
Este artigo explica as métricas de capacidade e como elas se comportam, mostra como acessar métricas de capacidade no portal do Azure e sugere quando considerar dimensionar ou atualizar sua instância de Gerenciamento de API.
Observação
Atualmente, esse recurso não está disponível em workspaces.
Importante
Este artigo apresenta como monitorar e dimensionar sua instância de Gerenciamento de API do Azure com base nas métricas de capacidade. No entanto, quando uma instância atingir sua capacidade, ela não será limitada para evitar sobrecarga. Em vez disso, ela agirá como um servidor Web sobrecarregado: latência aumentada, conexões descartadas e erros de tempo limite. Os clientes de API devem estar prontos para lidar com esses problemas como fazem com outros serviços externos, por exemplo, usando políticas de repetição.
Pré-requisitos
Para seguir as etapas neste artigo, você deve ter uma instância de Gerenciamento de API em uma das camadas que dá suporte a métricas de capacidade. Para obter mais informações, consulte Criar uma instância do Gerenciamento de API do Azure.
Métricas de capacidade disponíveis
Diferentes métricas de capacidade estão disponíveis nas camadas de serviço v2 e camadas clássicas.
Nas camadas v2, as seguintes métricas estão disponíveis:
Porcentagem de CPU de Gateway – O percentual da capacidade da CPU usada pelas unidades de gateway.
Porcentagem de memória de gateway – O percentual da capacidade da memória usada pelas unidades de gateway.
As agregações disponíveis para essas métricas são as seguintes.
- Avg – porcentagem média da capacidade usada entre processos de gateway em cada unidade de uma instância de Gerenciamento de API.
- Máximo – Porcentagem da capacidade no processo de gateway com o maior consumo.
O uso de CPU e memória revela o consumo de recursos por:
- Serviços de plano de dados de gerenciamento de API, como processamento de solicitações, que podem incluir solicitações de encaminhamento ou a execução de uma política.
- Serviços do plano de Gerenciamento de API, como as ações de gerenciamento aplicadas por meio do portal do Azure ou do Azure Resource Manager ou a carga proveniente do portal do desenvolvedor.
- Processos selecionados do sistema operacional, incluindo processos que envolvem custo de handshakes TLS em novas conexões.
- Atualizações de plataforma, como atualizações do sistema operacional nos recursos de computação subjacentes para a instância.
- Número de APIs implantadas, independentemente da atividade, que pode consumir capacidade adicional.
Comportamento da métrica de capacidade
Em métricas de capacidade da vida real podem ser afetadas por muitas variáveis, por exemplo:
- padrões de conexão (nova conexão em uma solicitação versus reutilização da conexão existente)
- tamanho de uma solicitação e resposta
- políticas configuradas em cada API ou número de pedidos de envio de clientes.
Quanto mais operações complexas nas solicitações forem, maior será o consumo de capacidade. Por exemplo, políticas de transformação complexas consomem muito mais CPU do que um simples encaminhamento de solicitação. As respostas lentas do serviço de back-end também aumentam o consumo.
Importante
As métricas de capacidade não são medidas diretas do número de solicitações que estão sendo processadas.
As métricas de capacidade também podem aumentar intermitentemente ou ser maiores que zero, mesmo se nenhuma solicitação estiver sendo processada. Isso acontece por causa de ações específicas do sistema ou da plataforma e não deve ser levado em consideração ao decidir dimensionar uma instância.
Embora as métricas de capacidade sejam projetadas para a superfície de problemas com sua instância de gerenciamento de API, há casos em que os problemas não serão refletidos nas alterações nas métricas de capacidade. Além disso, métricas de baixa capacidade não significam necessariamente que sua instância de Gerenciamento de API não está enfrentando nenhum problema.
Use o Portal do Azure para examinar as métricas de capacidade
Acesse as métricas no portal para entender a quantidade de capacidade usada ao longo do tempo.
- Navegue até sua instância de API Management no portal do Azure.
- No menu esquerdo, em Monitoramento, selecione Métricas.
- Selecione o Percentual de CPU de gateway ou porcentagem de memória da métrica do Gateway nas métricas disponíveis. Escolha o padrão agregação do Avg ou selecione a agregação Max para ver o pico de uso.
- Escolha um período de tempo desejado na barra superior da seção.
Importante
Atualmente, a métrica Capacidade também aparece no portal para instâncias em camadas v2. No entanto, não há suporte para uso nas camadas v2 e mostra um valor de 0.
Observação
Você pode definir um alerta de métrica para avisá-lo quando algo inesperado estiver acontecendo. Por exemplo, receba notificações quando a instância de Gerenciamento de API exceder o uso de CPU ou Memória de pico esperada por mais de 20 minutos.
Use capacidade para escalar decisões
As métricas de capacidade de uso para tomar decisões sobre dimensionar uma instância de gerenciamento de API para acomodar mais carga. Veja a seguir as considerações gerais:
- Observe uma tendência de longo prazo e a média.
- Ignore os picos repentinos que provavelmente não estão relacionados a um aumento de carga (confira a seção Comportamento da métrica de capacidade para obter explicações).
- Como regra geral, atualize ou dimensione sua instância quando um valor de métrica de capacidade exceder de 60% a 70% por um longo período de tempo (por exemplo, 30 minutos). Valores diferentes podem funcionar melhor para seu serviço ou cenário.
- Se a instância foi configurada com apenas 1 unidade, atualize ou dimensione a instância quando o valor da métrica de capacidade exceder 40% por um longo período. Essa recomendação baseia-se na necessidade de reservar capacidade para atualizações do SO convidado na plataforma de serviço subjacente.
Dica
Se você puder estimar o tráfego antecipadamente, teste a instância de Gerenciamento de API nas cargas de trabalho esperadas. Você pode aumentar a carga de solicitações no locatário gradativamente e monitorar o valor da métrica de capacidade correspondente à carga máxima. Siga as etapas da seção anterior para usar o portal do Azure para entender quanta capacidade é usada a qualquer momento.