Análise de Desempenho: Web API [Artigo] - página 4
[ Hits: 6.567 ]
Foram realizados 3 testes iguais utilizando o Jmeter, os dados coletados são apresentados na Figura 1 na forma de gráfico. Nesses testes a máquina virtual foi submetida a carga poucos segundos após ser iniciada, garantindo assim que não haviam outras tarefas ocupando recursos da mesma, apenas os processos necessários para o bom funcionamento do sistema como um todo.
A Figura 2 apresenta o comportamento dos recursos submetidos ao teste do Apache Bench, onde não havia tempo de pausa entre a progressão das requisições. É possível observar que há uma relação entre os I/O da rede e a Utilização de CPU.
Em momentos que a utilização de CPU chega a 100% há um aumento no tempo de resposta. Nos momentos em que o uso da CPU está acima de 90%, esse tempo já se apresenta mais longo, normalmente o tempo é entre 1,2 a 0,1 segundos, nos momentos de pico de utilização o tempo chega à 4 segundos, essa informação é apresentada como saída do comando Apache Bench, um valor não aceitável em alguns tipos de serviços online.
O uso de memória não fica comprometido com esse tipo de aplicação, a entrada e saída de dados no disco é mais utilizada em altos valores de requisições, acima de 90 requisições, devido ao fato do servidor Web escrever mais informações nos arquivos de logs.
Os scripts, logs e planilha com os dados analisados estão disponíveis em [Gomes, 2015], para futura reprodução de experimento. Existem alterações que podem ser realizadas para melhorar o desempenho de alguns recursos, tais como alteração nas configurações do SGDB, do Servidor Web e de opções do Kernel Linux.
Entre os trabalhos futuros destacam-se:
Uso mais amplo da API (Web Service), simulando mais de uma requisição para cada usuário único;
Utilizar um processador Multicore, alterando o módulo mpm_prefork pelo mpm_work do servidor Web Apache;
Realizar tuning de Kernel, SGBD e Servidor Web. Um trade-off entre o uso de memória e carga de CPU.
Com a crescente dependência tecnológica que a sociedade atualmente possui, planejamento e gerência de capacidade são assuntos que fazem parte do cotidiano de profissionais que trabalham com infraestrutura computacional, para garantir a qualidade de serviço e competitividade entre fornecedores de soluções na nuvem se faz necessário a difusão de técnicas e estudos sobre ambientes dessa natureza. A realização desse tipo de estudo comprova a necessidade de investimento em infraestrutura para o bom fornecimento de serviço.
[Araujo & Cavalcante. 2012] Araujo, B. D. L; Cavalcante, V. M. R. M. (2012) Computação em Nuvens: Contribuição para a Sustentabilidade Econômica e Ecológica. I ERIPE (Revista da Escola Regional de Informática de PE).
[Buyya et al, 2011] Buyya, Rajkumar; Broberg, James; Goscinski, Andrzej. Cloud Computing - Principles and Paradigms; 1. ed New Jersey, U.S. : John Wiley & Sons, Inc. 2011. 664p. ISBN: 978-0-470-88799-8
[EFE. 2015] Agencia EFE. Internet terá 100 bilhões de dispositivos conectados em 2020, projeta consultoria. Disponível em: < http://exame.abril.com.br/tecnologia/noticias/internet-lidara-com-100-bilhoes-de-dispositivos-em-2020 >. Acessado em: 24 out. 2015.
[Gomes, 2015] Gomes, S. Artigo_Capacity_Planning_2015. Disponível em: < https://github.com/saulobr88/Artigo_CapacityPlanning_2015 >. Acessado em 31 jan 2016.
[Jain. 1991] Jain, R. The Art of Computer Systems Performance Analysis: techniques for experimental design, measurement, simulation and modeling, John Wiley, 1991, ISBN: 0-471-50336-3
[Melo et al. 2006] Melo, C. A., Arcoverde, D. F., Moraes, E. R. A., Pimentel, J. H. C., Freitas, R. Q. (2006) Software como Serviço: Um Modelo de Negócio Emergente. UFPE.
[Menescé et al, 2004] Menescé, D. A. Almeida, V. A. F. Dowdy L. W. Performance by Design - Capacity Planning by Example. Prentice Hall PTR, 2004. ISBN: 0-13-090673-5. 552p.
[Mohamed et Al, 2014] Mohamed, R. P. Kolovos, D. S. Paige, R. F. Resource Requirement Analysis for Web Applications Running in a Virtualised Environment, 2014 IEEE 6th International Conference on Cloud Computing Technology and Science.
[Souza et al. 2009] Souza, F. R. C., Moreira, L. O., Machado, J. C. (2009). Computação em Nuvem - Conceitos, Tecnologias, Aplicações e Desafios. III Escola Regional de Computação Ceará - Maranhão - Piauí (ERCEMAPI).
[Velte, 2011] Velte, A; Velte, T. J.; Elsenpeter, R. Computação em Nuvem: Uma abordagem prática.1 ed. Rio de Janeiro: Alta Books, 2011.