A pontuação Apdex (índice de desempenho da aplicação) é uma métrica quantitativa de padrão aberto que mede a satisfação de um usuário em relação ao tempo de resposta das aplicações e serviços da web de uma organização.
As organizações são incentivadas a captar muitas métricas de desempenho relacionadas às suas aplicações de TI para poderem entender melhor o desempenho, detectar problemas e identificar maneiras de melhorar a integridade geral dessas aplicações. Todas essas métricas podem contribuir para melhorar a satisfação geral do usuário. No entanto, às vezes é difícil reunir várias métricas para entender de forma simples se uma aplicação está funcionando corretamente. Esse problema pode ser resolvido com a pontuação Apdex, que identifica a satisfação do cliente com base no tempo de resposta de uma aplicação, que pode estar abaixo ou acima de um limite definido.
As pontuações Apdex costumam ser usadas como parte do gerenciamento de desempenho de aplicações (APM), que às vezes é chamado de monitoramento de desempenho de aplicações.
O valor do Apdex resultante é uma medida numérica da satisfação do usuário em uma escala uniforme de 0 a 1 (em que 0 corresponde à frustração, e 1, à satisfação). O objetivo é fornecer uma compreensão mais equilibrada da satisfação do usuário com os tempos de carregamento do que os valores de tempo médio de resposta, que podem ser distorcidos por um tempo de carregamento lento (por exemplo, um minuto). As pontuações Apdex tratam cada instância do tempo de resposta separadamente, em vez de criar uma pontuação agregada.
Peter Sevcik, fundador da NetForecast, identificou pela primeira vez a possibilidade1 de um padrão aberto, simples e uniforme para medir a qualidade da aplicação. Ele liderou um grupo de especialistas do setor que criou a Especificação Técnica do Apdex. Logo depois, a Apdex Alliance adotou o padrão Apdex, atualmente usado por muitas organizações.
Manter uma pontuação Apdex serve como um indicador-chave de desempenho (KPI) quase em tempo real para muitas organizações. Ele cria um framework para relatar, comparar e avaliar o tempo de resposta da aplicação e analisar a satisfação do usuário com o objetivo final de proporcionar uma excelente experiência do usuário.
A identificação de uma pontuação Apdex começa com a definição de um limite de Apdex, que indica um tempo de resposta considerado tolerável pela organização. Um limite constante facilita o acompanhamento das alterações ao longo do tempo por parte da organização. Cada organização deve identificar seu próprio limite de tempo de resposta, já que não existe um limite universal que todas as organizações devam utilizar.
As organizações geralmente determinam seu próprio limite com base em alguns fatores:
A fórmula do Apdex é um índice de proporção para determinar o tempo de carregamento de uma aplicação com base no limite definido. A experiência de cada usuário contribui para a pontuação Apdex com base no tempo de carregamento que ele enfrentou.
A experiência do usuário é classificada em uma das três categories:
Para determinar a pontuação Apdex, os tempos de resposta satisfatórios (contagem de satisfeitos) são adicionados à metade dos tempos de resposta toleráveis (contagem de toleráveis) e divididos pelo número total de amostras.
A escala Apdex varia de 0 (quando nenhum usuário está satisfeito) a 1 (quando todos os usuários estão satisfeitos). Uma pontuação Apdex baixa pode indicar que a organização precisa melhorar sua capacidade de solucionar problemas e otimizar o desempenho por meio de práticas como APM, gerenciamento de problemas e engenharia de confiabilidade local.
Uma pontuação Apdex ruim pode ser sinal de que há problemas nas operações de TI atuais de uma organização. Veja a seguir vários exemplos e casos de uso de como as organizações podem melhorar sua pontuação Apdex.
Otimizar consultas de códigos e banco de dados: uma organização que configura mal seus bancos de dados e tem códigos ineficientes provavelmente terá baixas pontuações Apdex. Por exemplo, um código de qualidade inferior pode exigir mais recursos de CPU e memória do que o necessário, aumentando o tempo de carregamento. A otimização do código e das consultas ao banco de dados é a melhor maneira de melhorar as pontuações Apdex.
Minimizar solicitações externas: fazer solicitações de API para serviços de terceiros pode criar uma sobrecarga significativa nos seus serviços da web e contribuir para elevar a latência. Para uma organização com baixas pontuações Apdex, talvez seja interessante rever suas solicitações externas para verificar se elas são necessárias, valiosas e não aumentam significativamente a latência.
Usar redes de entrega de conteúdo (CDNs): uma CDN é um sistema de servidores geograficamente dispersos que as empresas utilizam para distribuir conteúdos aos usuários com mais rapidez, concluindo solicitações por meio do servidor mais próximo do usuário. Por exemplo, se um usuário na Alemanha quiser acessar o conteúdo de uma página da web com conteúdo hospedado em Nova York, a solicitação dele será atendida pelo servidor edge da empresa na Europa, e não no servidor em Nova York. Isso gera menos latência e reduz a distância que os dados devem percorrer.
Usar processamento assíncrono para tarefas pesadas: o processamento assíncrono permite a distribuição do processamento exigido por uma aplicação entre sistemas em um ambiente de intercomunicação. O processamento assíncrono descarrega tarefas pesadas para processos separados, liberando recursos para que o thread principal possa atender às solicitações do usuário.
Expanda os servidores para atender às crescentes demandas de tráfego: aumentos significativos no tráfego, sem a possibilidade de ampliar a capacidade dos servidores, ou o uso de balanceamento de carga podem levar a tempos de resposta insatisfatórios. Para atenuar esse problema, é possível usar uma plataforma que automatiza proativamente a alocação de recursos de rede com base na demanda em tempo real, como o IBM® Turbonomic®.
As organizações que monitoram o desempenho usando a pontuação Apdex têm vários benefícios:
Tempos de resposta menores na web: o monitoramento da pontuação Apdex fornece à organização uma compreensão mais precisa do desempenho das aplicações e serviços. Essas informações ajudam a acelerar os tempos de resposta e permitem que a organização entregue conteúdos relevantes aos usuários com mais rapidez.
Usuários mais satisfeitos: as organizações que se concentram na pontuação Apdex provavelmente estão mais atentas à experiência do usuário e a atendem melhor. O monitoramento e o aprimoramento contínuos das pontuações Apdex reduzem o número de usuários frustrados e aumentam a satisfação dos clientes, que podem se tornar grandes defensores da organização.
Adesão aos contratos de nível de serviço (SLAs): o SLA de uma organização pode especificar quanto tempo uma aplicação leva para carregar. Se os tempos de carregamento forem sistematicamente maiores do que o SLA estipula, as organizações podem estar violando esse contrato com os usuários.
Tomada de decisão baseada em dados: o acompanhamento de uma pontuação Apdex fornece aos líderes de negócios dados confiáveis para tomar decisões mais fundamentadas sobre o desempenho de suas aplicações web. Ele cria um sistema mais metódico para monitorar a satisfação do cliente do que confiar em relatos ou métricas menos precisas.
Observe, monitore e corrija automaticamente toda a sua pilha de aplicações com o IBM Instana Observability.
Ofereça desempenho máximo e alta satisfação do usuário em seu portfólio de aplicações personalizadas.
Conecte a observabilidade full stack com o gerenciamento automatizado de recursos de aplicações para resolver problemas de desempenho antes que afetem a experiência do cliente.
1 The History of Apdex, Apdex.org