Aparentemente, o gerenciamento do desempenho de aplicativos (APM) é definido simplesmente como o processo de manter a experiência do usuário aceitável em relação a determinado aplicativo. O principal objetivo é continuar mantendo a integridade e o bom funcionamento dos aplicativos. A confusão acontece quando você considera todas as interdependências e nuances do que constitui um aplicativo e tenta definir o que realmente é "bom o suficiente".
APM: A síntese do debate natureza versus cultura
Neste caso, "cultura" é o ambiente que consiste na infraestrutura e nos serviços de rede, bem como nos serviços de aplicativos compostos. Por outro lado, "natureza" engloba as funções em nível de código, as chamadas de procedimento e as consultas que formam o DNA do aplicativo. As complexidades da natureza e da cultura do aplicativo têm um papel importante no APM, porque é possível "ampliar a cultura" de um aplicativo ao criar com inúmeras soluções, plataformas e serviços de fornecedores. De modo similar, a natureza do aplicativo pode ser codificada com uma série de linguagens de programação e serviços de tempo de execução, chamadas de função e APIs. Independentemente do que é natureza e do que é cultura, o APM trabalha para manter o desempenho e a integridade do aplicativo. Com isso, já descartamos a pergunta que não quer calar: o que é "bom"?
Desafios para encontrar o que é bom para o APM
Cada datacenter é único; portanto, o bom desempenho e a boa integridade podem variar de uma organização para outra, até mesmo dentro do mesmo setor vertical. Além disso, obter um bom desempenho pode significar a adoção de uma série de veículos de implantação. Na realidade, de acordo com o Relatório de tendências em TI da SolarWinds para 2017, cada vez mais empresas estão adotando os serviços de nuvem pública para complementar os serviços de TI locais, o que resulta em um modelo de implantação híbrida de TI. Isso acrescenta mais níveis de complexidades à equação do APM, visto que a condição de "bom" agora depende dos outros provedores de serviço.
Além disso, dificilmente há uma explicação clara sobre o APM no discurso de marketing do fornecedor, que destaca os recursos em vez dos problemas que as soluções deles resolvem. Isso cria mais trabalho ao nomear e criar construções de tecnologia semelhantes como algo diferente, forçando os profissionais de TI a normalizar os serviços e as tecnologias de vários fornecedores e provedores de serviços de nuvem. Quem tem tempo para isso? Ainda assim, isso tem que ser feito para garantir que a melhor solução seja escolhida para o aplicativo.
Complicar ainda mais a natureza do APM é outro desafio. Em TI, otimizar-se para tudo significa que você está se otimizando em vão. Trata-se da natureza dos aplicativos de TI, que são desenvolvidos para solicitar recursos ou serviços para realizar o trabalho. Os aplicativos não se importam com a quantidade de recursos ou serviços necessários, desde que o trabalho seja feito. Considere o quanto as empresas exigem para gerir seus negócios, e a equação do APM se transforma em uma equação diferencial multivariável com uma solução que, em si, já é uma equação. Como as organizações de TI conseguem o sucesso do APM em meio a todas as mudanças de variáveis?
Sucesso do APM
A chave para um APM bem-sucedido é ter protocolos adequados para definir decisões orientadas por dados e, em seguida, colocá-las em prática. Esses protocolos incluem monitoramento com disciplina para determinar as linhas de base operacionais do ecossistema do aplicativo, relatório de tendências para detectar anomalias e desempenho abaixo do esperado e rastreamento de código para ajudar a garantir que a Qualidade do Serviço (QoS) seja sempre atendida sem que os profissionais de TI tenham de pagar mais por tempo e recursos ao otimizar o código do aplicativo. As equações diferenciais podem ser um processo de engenharia importante, mas não deixe que essa seja a base de sua estratégia de APM. Os profissionais de TI não têm tempo nem recursos para resolver equações complexas além de tudo o que eles têm que integrar e fornecer continuamente.
Conclusão
Independentemente de como o APM é definido pelos especialistas, analistas, fornecedores e até mesmo profissionais de TI, o objetivo principal é que o aplicativo funcione perfeitamente. Quando essas condições são atendidas, é quase certo que as expectativas do usuário final sejam atendidas.
Kong Yang, head Geek da SolarWinds.