Upload
vinicius-cardoso-garcia
View
73
Download
2
Embed Size (px)
DESCRIPTION
Web Services tem desempenhado um papel significativo no desenvolvimento e integração de aplicações. Entretanto há ainda desafios para atender seu amplo potencial, um destes desafios é verificar o comportamento e a qualidade dos serviços disponibilizados. Esse trabalho apresenta uma solução em forma de um plugin que permite realizar o monitoramento e gerenciamento de Web Services baseados no protocolo SOAP padrão da W3C, de forma não intrusiva à codificação e desacoplada do ambiente de execução. Para atingir os objetivos a solução realiza uma extensão da API JAXWS e faz uso do processo de instrumentação dinâmica através da API JMX
Citation preview
Defesa Mestrado Profissional Engenharia de Software – CESAR
Um Plugin para Monitoramento e Gerenciamento de Web Services
Baseados em SOAP
MESTRANDO: ADAIR JOSE ROHLING ORIENTADOR: VINICIUS C. GARCIA, Ph.D.
Roteiro
• Fundamentação • Desafios e Dificuldades • Possíveis Soluções • Proposta • Conclusões e Trabalhos Futuros
Web Services - SOAP
• Software projetado para apoiar interações entre computadores em um rede(Booth, 2004)
• SOAP- Protocolo Baseado em XML • Padrão da W3C; • Independência de plataforma, Protocolo
de Comunicação e Linguagem de desenvolvimento
Desafios e Dificuldades
• Shuping (2003), indica que a falta de informações sobre atributos de qualidade dos Web Services é uma das causas da lenta taxa de adoção desta tecnologia.
• Não possui um modelo padrão para tratar de atributos de qualidade.
Desafios e Dificuldades
• Sobrecarga, tempo de resposta muito elevado, erros ou falhas na lógica do desenvolvimento
• Não possui informações sobre o conteúdo tráfego;
Possíveis Soluções
• Ferramentas que capturam o tráfego de baixo nível de rede: tcpmon, SOAPscope, NetSniffer, Wireshark
Possíveis Soluções
• Usar recursos dos Servidores de Aplicações Web;
• Usar o framework Axis(implementação baseada em Java do protocolo padrão W3C SOAP);
• Usar Handler Framework da API JAX-WS; • Desenvolver soluções a nível de
implementação, acoplado ou não aos interesses funcionais.
Proposta
Implementar uma solução em forma de plugin para:
• Funcionar de forma desacoplada do ambiente de execução e não intrusiva à codificação.
• Realizar em tempo de execução a i n t e r c e p t a ç ã o , m o n i t o r a ç ã o e gerenciamento.
Proposta
• Apresentar uma alternativa para realizar a interceptação de Web Services em nível da API JAX-WS.
• Apresentar uma validação do plugin, com o intuito de avaliar o impacto no desempenho e verificar a independência do ambiente de execução.
Desafios e Decisões Tecnológicas
• Funcionamento em forma de plugin. • Dependência somente da plataforma
Java. • Definir o nível mais adequado da camada
de p ro toco los pa ra rea l i za r o monitoramento.
• Compreender a implementação da API JAX-WS
Desafios e Decisões Tecnológicos
• Definir como real izar o processo interceptação através da extensão JAX-WS
• Instrumentação do conteúdo do protocolo SOAP através de API JMX incluída na própria JDK, possuindo disponibilidade de conectores e adaptadores.
Visão Geral Arquitetura
Padrão Arquitetural
Funcionalidades
• Total de Requisição e Respostas • Total e Percentagem de falhas de cada
operação • Tempo máximo, mínimo e médio de cada
operação • Possibilidade de Habilitar/Desabilitar o
gerenciamento em tempo de execução
Interface de Monitoramento
Validação
• Impacto no Desempenho § Acréscimo valor médio de 3,26%
• Independência de ambiente § Funcionamento com 100% de monitoramento em
ambientes implantados.
Trabalhos Futuros
• Implantar mecanismos de Cache de Serviços.
• R e a l i z a r p r o c e s s a m e n t o d e monitoramento de forma paralela.
• Realizar análise do conteúdo dos envelopes SOAP.
• Validação e Tratamento de erros. • Criar b ib l io teca para aux i l ia r no
desenvolvimento.