Brauliro Gonçalves Leal Avaliação de Desempenho de Sistemas Terceira Edição Juazeiro – BA 2020 Copyright© 2016, 2017, 2018, 2019, 2020 by Brauliro Gonçalves Leal O conteúdo deste livro eletrônico é totalmente livre para uso de qualquer natureza desde que citado a fonte. Toda e qualquer parte desta publicação pode ser reproduzida, distribuída ou transmitida de qualquer forma ou por qualquer meio, ou armazenada de qualquer forma ou em qualquer sistema desde que reconhecida a autoria. Atribuição-CompartilhaIgual - esta licença permite que outros remixem, adaptem e criem a partir deste trabalho, mesmo para fins comerciais, desde que lhe atribuam o devido crédito e que licenciem as novas criações sob termos idênticos (creativecommons.org/licenses). Terceira Edição Eletrônica: Maio de 2020 ISBN: a ser feito# O autor Brauliro Gonçalves Leal Professor do Colegiado de Engenharia da Computação Universidade Federal do Vale do São Francisco Avenida Antônio Carlos Magalhães, 510 Santo Antônio Juazeiro/BA – Brasil 48.902-300 e-mail: brauliro.leal@univasf.edu.br site: www.univasf.edu.br/~brauliro.leal Sobre este documento Este documento foi escrito em LibreOffice (www.libreoffice.org), suas imagens foram produzidas por Kolourpaint (www.kolourpaint.org), seus programas foram editados na IDE Code::Blocks (www.codeblocks.org) e compilados com o GNU GCC (gcc.gnu.org). O Sistema Operacional utilizado foi GNU/Linux Mint Cinnamon. Software livre é uma boa ideia. Avaliação de Desempenho de Sistemas 3 Avaliação de Desempenho de Sistemas Prefácio Este livro tem como principal objetivo o de servir de texto para a disciplina de Avaliação de Desempenho de Sistemas do curso de Engenharia da Computação do Colegiado de Engenharia da Computação da Universidade Federal do Vale do São Francisco. Este texto busca responder as questões: • O que se entende por Avaliação de Desempenho de Sistemas? • Que parâmetros são utilizados para quantificá-la e qualificá-la? • Quais são seus conceitos fundamentais? • Como a análise de casos particulares podem levar a conclusões mais amplas? • Quais perguntas centrais deste assunto podem ser respondidas? • Quais são suas limitações? • Quais respostas não se pode encontrar a partir destes conceitos? • Como e quando usar os conceitos da Avaliação de Desempenho de Sistemas? • Como introduzir os assuntos de forma incremental de modo a formar conceitos e aplicá-los? O autor espera que tenha contribuído com o ensino destes conteúdos de modo a torná-los mais atraentes, visuais, dinâmicos e aplicados nas diversas áreas de conhecimento, quando cabível. Do mesmo modo que frases verbais são organizadas em sentenças, e que as sentenças são organizadas em parágrafos que, por sua vez, são constituídas de palavras; a modelagem matemática pode ser organizada em sequências e estruturas tomadas das mais simples para as mais complexas, e vice-versa. Assim, sua linguagem pode ser aprendida suficientemente bem para que se compreenda a maioria das suas afirmações embora não sejam tão simples. E muito mais, alimentando a intuição dos leitores e os capacitando na formação de conceitos e imagens visuais dos processos inerentes a ela, algo que as pessoas já fazem em alguma medida no dia a dia. O ambiente empresarial requer dados quantitativos e qualitativos, de modo a gerar conteúdos importantes e informações fundamentais. Não é concebível fazer parte de uma equipe que atua às cegas, sem informações, sem relatórios, sem análise ou balanceamento, sem saber o que gera mais retorno e o que pode prejudicar o desempenho. Com acesso à informação relevante, pode-se definir, por exemplo, as melhores estratégias e decisões a serem tomadas, montar um planejamento de acordo com os resultados obtidos através dos dados, gerar maior vantagem competitiva e conseguir informações essenciais para o desempenho da empresa. Dessa forma, é possível fazer um estudo real de uma empresa e antever quais caminhos produzem melhores resultados. Mas, para que isso ocorra da melhor forma, é necessário saber interpretá-los. Peço antecipadas desculpas por eventuais erros neste texto, que certamente existem, agradeço antecipadamente toda e qualquer correção ou sugestão de melhoramentos, que deverão ser enviadas para o e-mail do autor. Serão colocadas na página http://www.univasf.edu.br/~brauliro.leal/page/feedback.htm as Errata, Críticas e Sugestões Avaliação de Desempenho de Sistemas 4 recebidas. O ótimo é o inimigo do bom. Voltaire Avaliação de Desempenho de Sistemas 5 Índice 1. Introdução..................................................................................................................................................... 7 1.1. Técnicas de Avaliação de Desempenho de Sistemas..............................................................................8 1.2. Métricas de Avaliação de Desempenho de Sistemas............................................................................10 1.3. Métricas de Velocidade.........................................................................................................................11 1.3.1. Tempo de Resposta......................................................................................................................11 1.3.2. Vazão............................................................................................................................................ 12 1.3.3. Utilização...................................................................................................................................... 14 1.4. Confiabilidade....................................................................................................................................... 14 1.5. Disponibilidade..................................................................................................................................... 14 1.6. Outras Métricas.................................................................................................................................... 14 1.7. Caracterização das Métricas de Desempenho......................................................................................15 1.8. Exercícios............................................................................................................................................. 17 2. Medições...................................................................................................................................................... 19 2.1. Técnicas e Ferramentas de Medição.....................................................................................................19 2.2. Seleção e Caracterização de Carga......................................................................................................19 2.3. Monitores............................................................................................................................................. 20 2.3.1. Terminologia para Monitor............................................................................................................21 2.3.2. Classificação de Monitores............................................................................................................21 2.3.3. Monitores em Software.................................................................................................................21 2.3.4. Monitores em Hardware................................................................................................................22 2.3.5. Monitores de Software versus de Hardware..................................................................................22 2.3.6. Firmware e Monitores Híbridos......................................................................................................24 2.4. Benchmarking......................................................................................................................................