Ferramentas de Gestão do Desempenho de Aplicações Web

17 de Fevereiro de 2009 às 15:54:54 por João Nóbrega

De um modo geral, as ferramentas de gestão do desempenho das aplicações Web disponibilizam às organizações empresariais um modo de monitorizarem a actividade e determinarem a eficiência dos seus sites – internos ou públicos – do ponto de vista dos seus utilizadores. As ferramentas estão disponíveis em três variedades: software de gestão conjugado com agentes distribuídos em servidores ou equipamentos clientes que capturam dados sobre o desempenho das aplicações; software de monitorização que recolhe métricas de desempenho através da infra-estrutura, sem a necessidade de agentes em cada um dos equipamentos; e equipamentos que monitorizam tráfego e capturam métricas, como o tempo de resposta, enquanto os utilizadores interagem com as aplicações.

 

As aplicações analíticas Web tradicionais – isto é, aplicações sintéticas Web e testes de medida do desempenho estão incluídos no chapéu das ferramentas de gestão do desempenho das aplicações Web. Os fornecedores de analítica Web utilizam agentes distribuídos através da Internet para determinar como um site Web e as suas aplicações reagem a picos de carga nas diferentes geografias. Tipicamente, as ferramentas de gestão do desempenho de aplicações Web são disponibilizadas com as suas interfaces de gestão e funcionalidades de relatório, apesar da integração com outros sistemas de monitorização de tecnologias de informação começam a ser uma realidade.

Obtenha aquilo que necessita
Thomas Powell, fundador da empresa de desenvolvimento Web, tem trabalhado com aplicações Web desde o início da Internet comercial. No decorrer dos anos, acumulou uma experiência significativa no desenvolvimento de aplicações e no seu desempenho. Aqui ficam algumas das melhores práticas para lidar com a gestão do desempenho das aplicações Web.
1. Quando monitoriza o desempenho, assegure-se que está a visualizar a aplicação do ponto de vista do utilizador.
Infelizmente, a maior parte dos proprietários de sites Web estão num estádio de “feliz ignorância ” quanto à compreensão do desempenho das suas aplicações, refere Thomas Powell. Este é o caso das empresas com sites Web de utilização pública.
“Nos sites Web públicos, existe a sensação de ‘estamos a fazer isto bem porque vemos que está bem’. Mas não vêem com os olhos das pessoas que estão na Internet. Podem tentar, mas possuem imensos sistemas de monitorização, pelo que será sempre com esta perspectiva. Não estão a ver sob a perspectiva dos utilizadores”, refere.
Quando os utilizadores têm um problema com uma aplicação Web, raramente ocupam o seu tempo a informar a empresa de que existe algo de errado no site e as ferramentas de gestão do desempenho das aplicações Web disponíveis actualmente apenas disponibilizam uma pequena fotografia da realidade. Dependendo do tipo de aplicação Web e da ferramenta de gestão de desempenho em utilização, uma empresa poderá ter informação sobre a velocidade dos pacotes que estão a viajar de um lado para o outro ou quantas páginas um utilizador gera quando está no site. Mas, esta informação não é muito relevante porque não lhe diz qual é a experiência do utilizador.
Como exemplo, Thomas Powell conta a história de ter sido chamado para auxiliar uma empresa a descobrir a razão pela qual os utilizadores tinham problemas de desempenho com uma aplicação Flash. A empresa monitorizava as transferências de ficheiros através da rede WAN e os pacotes voavam através de ligações de banda larga. Mas a empresa não tinha em conta esta realidade: em alguns casos, estas ligações de banda larga anexados a antigos sistemas com processadores que atrasavam o processamento da animação.
A correcção foi fácil. Presentemente quando é instalada a aplicação, estabelece o perfil do sistema do utilizador, determina o que pode manipular e ajusta-se automaticamente para disponibilizar a “riqueza” aplicacional necessária.
“Este tipo de problemas possuem solução” sublinha Thomas Powell. “Mas, em primeiro lugar, as pessoas tem que reconhecer que não é importante aquilo que vêem, mas que é importante aquilo que os utilizadores vêem”.
2. Reúna as equipas de desenvolvimento e de redes na mesma página.
As empresas necessitam de criar um entendimento entre as equipas de desenvolvimento de aplicações Web e de redes com o objectivo de endereçar os problemas de desempenho adequadamente, sublinha Thomas Powell. Para alcançar a raiz do problema, ou melhor ainda, para identificar e corrigir o problema antes de afectar os utilizadores não pode ter as pessoas responsáveis pela monitorização da rede num canto e os programadores que examinam o estado da aplicação noutro canto. É preciso compreender o utilizador. “Os utilizadores não vêem um componente da infra-estrutura e um componente aplicacional. Apenas vêem como um sistema único”
Os fabricantes de ferramentas de gestão do desempenho de aplicações Web como a Coradiant e a Tealeaf Technology estão no caminho de disponibilizar uma visão mais holística nas suas ferramentas. Mas enfrentam um grande desafio de derrubar a divisão existente entre programadores de aplicações e administradores de redes, refere. Se a equipa aplicacional recebe um alerta de desempenho, necessita de ter as condições de ver o que se passa na rede ou nos servidores e vice-versa. “Tem que treinar os seus programadores para terem conhecimentos de rede e de segurança. Esta é a realidade”, refere.
3. Compreenda exactamente o que pretende determinar acerca do seu site Web antes de seleccionar uma ferramenta de gestão.
Lembre-se de que não existem microscópios mágicos, salienta Thomas Powell. “As pessoas estão a olhar para um software que é como um alarme anti-roubo. Disponibiliza um alerta mas não lhe diz as questões que são necessárias fazer. Se não perguntar as questões adequadas, a tecnologia não é importante”.
Assim, as empresas necessitam de compreender qual a informação que necessitam para executar o seu trabalho com perfeição. “Se é um Chief Executive Officer de um site de comércio electrónico ou a pessoa responsável por um site interno de Recursos Humanos, possui um problema, uma preocupação. ‘Porque é que não estão a colocar mais coisas no carrinho de compras? Porque é que não preenchem o formulário dos currículos? Porque é que as pessoas se queixam do formulário’. Estas são as questões que pretende ver respondidas; desenhe ou encontre tecnologias e ferramentas para encontrar as respostas”.
E, por vezes, aquilo que necessita é somente uma pequena aplicação de 40 linhas de código em JavaScript, um equipamento de gestão, uma aplicação de monitorização de serviço ou uma combinação.
4. Facilite aos utilizadores informações sobre problemas no site.
“Já viu sites que simplesmente perguntam ‘Qual a sua opinião sobre esta página?’ e pede-lhes para a classificarem. Isto é óptimo”, refere Thomas Powell. “A maior parte dos sites não permitem que as pessoas se queixem com facilidade. Talvez possa clicar para abrir uma mensagem de correio electrónico mas não pode votar instantaneamente”
Demasiado frequentemente, as empresas utilizam as visualizações de páginas como medida do sucesso, acrescenta. Na medida em que os visitantes geram uma quantidade significativa de visualizações, tal não significa que a pessoa esteja interessada. “Esta pessoa pode ficar frustrada, andando às voltas vendo as mesmas coisas vezes sem conta [mas sem nunca encontrar o que procura].” E num caso destes “esta pessoa não gosta do site. Mas como é que pode saber? Tem que disponibilizar um modo fácil para que o possa dizer”.
5. Lembre-se de que o seu trabalho nunca está acabado.
Uma única certeza acerca das aplicações Web e da gestão do desempenho é a de que é um processo contínuo. Continue a a fazer as perguntas adequadas, refere Thomas Powell, e vai continuar a descobrir coisas de que outro modo não teria conhecimento.

Cinco questões antes de adquirir ferramentas de gestão Web
Como é que a ferramenta recolhe os dados sobre desempenho?
Os fabricantes de ferramentas abordam este desafio de formas diferentes. Algumas monitorizam de modo passivo no servidor, enquanto outras utilizam agentes através da infra-estrutura e executam transacções sintéticas. Algumas possuem vocação de rede disponibilizando conhecimento através da rede, incluindo a última milha, enquanto outras são mais centradas nas aplicações. A melhor ferramenta de arquitectura deve reflectir com precisão a experiência dos utilizadores, explica George Hamilton, director do Yankee Group.
Como é que um fabricante trata a correlação de dados?
Uma ferramenta de gestão de desempenho das aplicações Web que não pode ligar-se a outros sistemas de monitorização internos não é muito valiosa. “Se esses dados estão isolados, não lhe dá uma pista de onde procurar o problema e não auxilia com os diagnósticos e com a resolução dos problemas”, salienta George Hamilton. Necessita de poder correlacionar dados de outros sistemas e avaliar se o problema reside na rede, no servidor ou talvez num componente de código mas escrito. E não se esqueça de perguntar quem vai fazer o trabalho de integração inicial, acrescenta Jasmine Noel, analista da Ptak, Noel & Associates. Alguns fabricantes, como a Indicative Software, são excelentes em disponibilizar adaptadores para integração facilitada. Mas o mesmo deve ser verdade para qualquer fabricante que seleccione, refere
Qual a sofisticação do motor de modelação para acordos de nível de serviço?
Alguns dos motores de modelação de SLA apenas olham para as transacções, enquanto outros disponibilizam uma visão mais profunda, evidenciando como diferentes utilizadores interagem com a aplicação. Saber como o motor de análise se integra com os outros sistemas de TI é de igual importância também. Por exemplo, um bom motor irá reconhecer quando um SLA falhou, identificar onde o problema reside e adoptar a acção, tal como alertar o ‘help desk’ ou o gestor da aplicação Web, refere Jasmine Noel.
Quais as consequências da instalação?
Se procura facilidade de instalação, um equipamento de gestão de desempenho das aplicações Web pode ser a sua escolha. Este é um dos factores que atraiu Patrick Gardella, director da arquitectura online da Discovery Communications, ao produto TrueSight da Coradiant. Liga-se um cabo a uma das portas e começa a aceder-se aos dados. Sem agentes para instalar, demora 20 minutos desde a ligação até à captura de dados, refere.
Qual o grau de suporte que a minha equipa pode esperar?
Quando Tom Eckfeld, gestor de projectos da OhioHealth, avaliou ferramentas de gestão de aplicações, uma coisa destacou a Indicative Software, que ele viria a seleccionar: a minúcia da empresa. “Eles queriam ter a certeza de que entendiam os nossos requisitos”, refere. “O CTO e a equipa estavam constantemente a olhar para modos de ampliar o produto e torná-lo mais valioso para nós, e tentaram manter-se sintonizados com as novas coisas que estávamos a fazer e a procurar modos de nos auxiliar “.

Métodos mistos para a gestão da Web
As aplicações Web são compostas por uma multiplicidade de tecnologias de hardware e de software em que qualquer uma delas pode abrandar ou quebrar a totalidade do sistema do ponto de vista dos utilizadores. Os proprietários de aplicações lutam diariamente para compreender os detalhes das falhas individuais através do sistema Web com exactidão para reconhecer, reproduzir e corrigir esses erros. Os sistemas de gestão Web tem como objectivo resolver este puzzle através de reunirem dados de diferentes componentes servidor, cliente e rede para mostrar o que correu mal e auxiliar os profissionais a compreenderem como poderão corrigir.
As abordagens à gestão de sistemas Web variam de acordo com os componentes monitorizados. As ofertas são claramente diferentes nas suas abordagens filosóficas mas podem, grosso modo, ser divididas entre aquelas que são mais orientadas para a monitorização de sistemas e aquelas que são mais orientadas para as aplicações.
As ofertas de gestão Web mais orientadas para os sistemas, que podem ser produtos isolados ou disponibilizadas como serviços que pretendem imitar as interacções dos utilizadores, inicialmente focalizadas na disponibilidade básica e atribuindo classificações a cada aplicação Web. Para lá de analisar os parâmetros de disponibilidade, os produtos mais recentes podem monitorizar os códigos de resposta http e mensagens de texto.
Enquanto os anteriores monitores Web podem alertar muitas das falhas aplicacionais, infelizmente estão limitadas a um conjunto específico de parâmetros de teste. E, mesmo quando alertam os administradores para os problemas, normalmente não possuem o grau de detalhe necessário para identificar com exactidão o problema ou mesmo reproduzir o problema. Os sistemas recentes de gestão Web, tais como as ofertas de empresas como a PremiTech, adicionam monitorização detalhada dos diferentes níveis da aplicação Web, incluindo a base de dados, o servidor Web, os balanceadores de cargas e pelo menos as condições de rede locais. Para alcançar este grau de detalhe adicional as tradicionais funções SNMP serão agregadas a partir dos diferentes níveis, mas com frequência os agentes tem que ser instalados nos sistemas monitorizados ou nos equipamentos o que torna a implementação mais difícil.
Abordagens sem agentes existem e recolhem os dados através de escutas de rede com o objectivo de reconstruir a experiência dos utilizadores e medir o desempenho global. Fabricantes como a Coradiant realizam um bom trabalho através de reconstruírem a actividade da aplicação e medem os dados de desempenho passivamente observando o tráfego da rede. No entanto, sem correlacionar dados de sistema como aqueles que podem ser recolhidos dos acessos, SNMP ou agentes, uma solução passiva focada na rede apenas conta parte da história.
A combinação das abordagens é uma tendência clara, mas mesmo quando se junta dados de rede e de sistema continua a existir a necessidade de monitorização dos utilizadores e dos clientes. Abordagens como injectar JavaScript nas páginas Web para recolher a actividade dos utilizadores e relatar erros nos clientes é o que soluções como a Symphoniq disponibilizam. Mesmo algumas das funcionalidades encontradas nos sistemas tradicionais de análise como a Omniture disponibilizam resultados de métricas dos clientes, dos utilizadores ou do negócio adicionando clareza à imagem disponibilizada pela monitorização.
Obviamente que o objectivo final da gestão Web é o de disponibilizar uma aplicação semelhante à Tivo que permita efectuar a repetição da experiência dos utilizadores, sublinhando o estado da rede e do servidor rapidamente e de um modo claro. Apesar de recentes no mercado, fabricantes como a TeaLeaf tentam endereçar este objectivo.
Mesmo se fosse possível uma única abordagem ou mesmo uma combinação das abordagens disponíveis pudessem endereçar a recolha de dados de clientes, de servidores e de redes com uma repetição perfeita, ainda permaneciam desafios significativos. A utilidade do conhecimento total da aplicação Web seria certamente obscurecida numa explosão de dados e desse modo tornar o valor dessas ferramentas de gestão mais conhecedoras do que devem monitorizar, como filtrar aquilo que interessa, como diagnosticar esses dados e, em seguida, como corrigir o problema relacionado. Independentemente do futuro brilhante das ferramentas de gestão Web, nenhuma combinação de velocímetros, câmaras de repetição e luzes irá substituir a necessidade de profissionais com competências de gestão de Web pelo que deve iniciar o investimento nestes profissionais.

Escolhas abundantes
A maioria das empresas com sites Web internos ou públicos confiam num único tipo de ferramenta de monitorização para determinar se as aplicações estão a ter um bom desempenho. As escolhas são abundantes com os fabricantes a evoluírem os seus produtos para disponibilizar dados ainda mais significativos.
Entre os maiores fabricantes encontramos a Citrix Systems (através da aquisição da Reflectent Software) e a PremiTech, que disponibilizam software de gestão conjugado com agentes distribuídos que são implementados nos equipamentos cliente para capturar o desempenho das aplicações; a Compuware, a ProactiveNet e a Symphoniq, que disponibilizam software de monitorização que colecciona métricas de desempenho através da infra-estrutura; a Coradiant, a Indicative Software e a Tealeaf Technology, com equipamentos de monitorização de tráfego e de captura dos tempos de resposta e de outras métricas enquanto os utilizadores interagem com as aplicações; e a Gomez e a Keynote Systems, que disponibilizam aplicações sintéticas e testes de medida do desempenho, também conhecidas como analítica Web.
Uma das principais vantagens desta última abordagem é a de disponibilizar uma visão mais holística da aplicação no contexto do negócio e dos objectivos de TI. Por exemplo, a Tealeaf Technology disponibiliza, presentemente, um painel de instrumentos destinada aos utilizadores da sua aplicação de gestão do desempenho de aplicações Web Tealeaf CX para melhor compreenderem a razão pela qual os clientes abandonam as aplicações online e os sites Web. Esta aplicação, Tealeaf cxView, disponibiliza aos gestores de TI e do negócio um portal através do qual podem monitorizar o desempenho em tempo real do ponto de vista dos utilizadores ou dos clientes, assim como disponibiliza cenários condicionais para melhorar o desempenho.
A Coradiant actualizou o seu produto de análise de tráfego Web com funcionalidades de business intelligence. Disponibiliza o equipamento Web.I WI-2100 Performance Analytics, que se liga à rede e funciona com os dados transaccionais e de tráfego Web dos equipamentos de gestão de desempenho TrueSight Web. A aplicação Web.I acrescenta analítica de business intelligence para para mostrar aos responsáveis de TI qual o desempenho das aplicações Web baseado em diferentes critérios, tais como, localização geográfica ou escritório.
A Coradiant e a Tealeaf estão no caminho certo para estes desenvolvimentos, refere Thomas Powell, fundador da PINT e membro do Network World Lab Alliance. No entanto, estes fabricantes enfrentam o obstáculo da divisão que ainda persiste entre redes e aplicações na generalidade dos departamentos de TI, adverte.
Jasmine Noel, da Ptak, Noel & Associates, acredita que a capacidade de integrar a Web com análise orientada ao negócio, como seja como é que uma empresa está a converter utilizadores Web em compradores e com informação do desempenho das TI. Este tipo de aplicação Web e ferramenta de gestão de desempenho, não só permitem à empresa mapear as aplicações Web necessárias para distribuir um novo serviço, como poderão disponibilizar um melhor entendimento dos recursos necessários para a suportar. “Se conseguir reunir estes dois mundos, estes dois conjuntos de análise, possui um entendimento mais forte da rentabilidade de um determinado serviço. Se o serviço necessita de disponibilidade de cinco noves (99,999) para ser valioso para os seus utilizadores, mas se vai custar uma fortuna para alcançar esta disponibilidade, então é melhor não estar no negócio” refere.
Integrar o negócio, a análise das aplicações Web e a disponibilidade e desempenho das TI “é o futuro destes produtos”, refere. A monitorização em tempo real que está disponível nestas ferramentas tem sido uma vantagem para a generalidade dos utilizadores. O fornecedor de serviços financeiros Sallie Mae, por exemplo, utiliza a aplicação Tealeaf CX como componente da plataforma flexível e em tempo real que desenvolveu para localização de eventos de sistema que causam estrangulamentos Web.
Na OhioHealth, a ferramenta de monitorização em tempo real e holística da Indicative auxiliou a empresa a alterar a abordagem da organização à gestão do desempenho de aplicações Web. “Tipicamente temos conhecimento do problema antes dos utilizadores finais. Presentemente, compreendemos que algo não está a ter o desempenho que deveria ter, podemos começar a resolver antes que os utilizadores tenham consciência desse problema”, refere Tom Eckfeld, gestor de projectos na organização de saúde. “Acumular todos os itens numa única localização é outra das vantagens. Não temos que instalar 10 produtos diferentes para resolver o problema”.
À medida que as ferramentas de gestão do desempenho de aplicações Web adaptam os seus produtos à procura do negócio, outras empresas começam a entrar neste segmento. Jasmine Noel assinala empresas como a ClearApp, que tentam compreender o desempenho através da correlação dos serviços disponibilizados pelas aplicações com os componentes de código subjacentes que suportam estes serviços, assim como disponibilizar uma interessante abordagem ao conceito de relacionamento tradicional de mapeamento.
Esta abordagem à gestão do desempenho das aplicações Web poderá vir a aquecer num momento em que as organizações empresariais começam a adoptar arquitecturas orientadas a serviços. As ferramentas tradicionais não funcionam adequadamente com SOA porque este modelo aplicacional não utiliza uma arquitectura específica, refere Jasmine Noel says.

Notícias Relacionadas

Insira um comentário, ou crie um trackback no seu próprio site.

Deixe o seu Comentário