BT
x A sua opinião é importante! Por favor preencha a pesquisa do InfoQ sobre os seus hábitos de leitura!

JINSPIRED lança uma nova versão do OpenCore

por Tim Cull , traduzido por Raphael Lacerda em 21 Out 2010 |

OpenCore, uma ferramenta leve para monitaração de desempenho em Java feita pela JINSPIREDteve sua versão 6.0 disponibilizada esse mês.

OpenCore é uma biblioteca de monitoração de desempenho que foca em aplicações de baixa latência. Isso significa que ela tenta ter o mínimo de overhead possível. A biblioteca também especifica um modelo de integração que busca separar "casos", “medidas” e “medidor”. O caso é um começo e um final arbitrário na execução de um programa (por exemplo, o começo e o fim de um método). Um medidor é um exemplo de algum ponto no tempo de algo como por exemplo o uso de uma CPU ou o tempo do relógio. Uma medida é o resumo de alguns medidores em um conjunto de casos. Então, exemplificando, pode-se dizer “pesquise todas as entradas e saídas de método. Quando cada caso começar, então meça o tempo decorrido de cpu. Agora, verifique qual é o resultado da média de tempo de CPU por método.

De acordo com o OpenCore, a vantagem de separar em três é que o overhead pode ser minimizado para atividades que nunca irão ser medidas pois “Ao contrário de todas as outras soluções, não existe nenhuma referência explícita de como uma atividade é medida ou se seu disparo foi de fato medido – isso é controlado por configuração do medidor real em tempo de execução pelo administrador”.

HowTo do OpenCore descreve que, para usá-lo em um projeto basta seguir os seguintes passos básicos:

  1. Adicionar o agente nativo do OpenCore através dos seguintes argumentos via linha de comando: -agentpath e -javaagent (nota: Alguns dos agentes usam AspectJ)
  2. Adicionar alguns jars do OpenCore no classpath;
  3. Habilitar o JMX ;
  4. Criar um arquivo de configuração que especifica o que deve ser monitorado e como.

De agora em diante, o quanto que a aplicação se torna envolvida com o OpenCore depende de como ela foi configurada. Em seu nível mais básico, o OpenCore simplesmente captura a contagem de chamadas de método e reporta ao JMX. Todavia, o agente foi designado para ser plugável a fim de que os desenvolvedores possam habilitar métricas e estatísiticas embutidas mais sofisticadas, ou possam colocar suas próprias métricas customizadas que capturam qualquer coisa e reportam a qualquer parte.

A biblioteca alega ter um menor overhead, especialmente para instrumented métodos que foram “desligados”. Por exemplo, em um OpenCore-authored benchmark, VisualVM profilling (que está na SUN JDK) foi 2 a 3 vezes mais lento do que o OpenCore probes.

Além de servir para ser utilizado para simples diagnósticos de desempenho, o OpenCore também pretende “unificar múltiplas aplicacões, sistemas e negócios relacionados ao gerenciamento de domínio sobre um modelo”, isso significa que ele poderia ser usado automaticamente para monitoramento e ajuste de capacidades, medição de uso para chargeback, e rastreamento da conformidade do SLA ( service level agreement - acordo de nível de serviço(ANS)). Essa visão unificada, entretanto, depende do fabricante e adoção nos domínios da tecnologia OpenCore.

Futuras versões prometem ter monitoração de desempenho para linguagens que não rodam na JVM como .NET e Ruby nativo, Python e PHP, embora nenhuma data tenha sido especificada para a liberação da versão.

Finalizando, desenvolvedores podem notar que o OpenCore não está licenciado como um “open source” mas sim como “APIs documentadas publicamente com integração definidada e pontos de extensão”. Em uma discussão recente Willian Louth esclarece que OpenCore é um produto comercial.

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão
Comentários da comunidade

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

Dê sua opinião

Conteúdo educacional

Feedback geral
Bugs
Publicidade
Editorial
InfoQ Brasil e todo o seu conteúdo: todos os direitos reservados. © 2006-2014 C4Media Inc.
Política de privacidade
BT