O documento discute como determinar o tempo ideal de uma transação em um aplicativo, propondo três caminhos: 1) através de fórmulas e gráficos, 2) usando a função big O, 3) analisando o gráfico de dispersão do tempo de resposta. Ele também aborda como atingir esse tempo ideal através do uso de índices precisos e eliminação de leituras desnecessárias.
Lei geral de proteção de dados por Kleber Silva e Ricardo Navarro (Pise4)
APM, Gestão de Performance da Aplicação por Antônio Cesar Sartoratto Dias
1. Proibida cópia ou divulgação sem
permissão escrita do CMG Brasil.
APM
Gestão de Performance da Aplicação
2. Proibida cópia ou divulgação sem
permissão escrita do CMG Brasil.
2
fontes:
Sartoratto & Carvalho, 2008
Moreno & Smith, 2010
Fato Observado
3. 3
Proibida cópia ou divulgação sem
permissão escrita do CMG Brasil.
Números Observados
fonte:
números observados durante
um projeto comercial
a maior contribuição para o tempo de resposta do aplicativo
pertence ao ambiente operacional
4. Proibida cópia ou divulgação sem
permissão escrita do CMG Brasil.
Tempo ideal de uma transação
1º caminho para descobri-lo
fontes:
Menascé e Almeida, 2002
Goldbarg e Luna, 2000
através do cálculo indicado pela fórmula e figura abaixo:
4
5. Proibida cópia ou divulgação sem
permissão escrita do CMG Brasil.
5
Proc
Cache
Memory
Channel
Disk-Cache
Disk
250 ps
1 ns
100 ns
10 µs
10 µs
1 ms
10 s
-12
10 s
-9
10 s
-6
10 s
-3
10 s
-9
10 s
-6
Tempo ideal de uma transação
essa afirmação nos leva ao 2º caminho
para cálculos com até 3 casas decimais
o tempo de processador pode ser
desprezado
(por ter 12 casas decimais)
1º caminho para descobri-lo
6. Proibida cópia ou divulgação sem
permissão escrita do CMG Brasil.
Tempo ideal de uma transação
2º caminho para descobri-lo
fontes:
Knuth, 1997
NIST, 2014
através da função big (O):
6
Tempo Mínimo: (O) = N log N
Tempo Máximo: (O) = N (log N)2
o tempo de resposta é o tempo dos acessos a discos
7. Proibida cópia ou divulgação sem
permissão escrita do CMG Brasil.
Tempo ideal de uma transação
3º caminho para descobri-lo
através do gráfico de dispersão do tempo de resposta:
7
o tempo ideal é o menor tempo de resposta do gráfico
fonte:
números observados durante
um projeto comercial
espaço amostral: 10 mil transações
8. Proibida cópia ou divulgação sem
permissão escrita do CMG Brasil.
Tempo ideal de uma transação
como atingi-lo:
8
com uso de índices precisos e
eliminação de leituras desnecessárias
fonte:
números observados durante
um projeto comercial
abolindo
esta
prática
9. Proibida cópia ou divulgação sem
permissão escrita do CMG Brasil.
Resultados
9
o tempo ideal foi atingido
fonte:
números observados durante
um projeto comercial
espaço amostral: 10 mil transações
10. Proibida cópia ou divulgação sem
permissão escrita do CMG Brasil.
Resultados
10
a seleção de registros foi realizada por índice
e não mais por lógica: o tempo foi reduzido.
fonte:
números observados durante
um projeto comercial
12. 12
Proibida cópia ou divulgação sem
permissão escrita do CMG Brasil.
Complexidade de Código
000005 SELECT CDPED,
000006 NRPED,
000007 DTPED,
000008 CDSOLICITAPED,
000009 DSPED,
000012 NRCAR,
000013 NRTRX,
000014 NRLIN,
000015 HRABERTPED,
000016 CDGESTOREQP
000017 FROM TABELA-TAB!
000018 WHERE DTPED > “2014/01/01”
...!
000019 ORDER BY DTPED DESC,
...!
esta construção é complexa?
SIM,
apesar de fácil codificação
consome muito processador
pela falta da coluna DTPED no índice.
13. Proibida cópia ou divulgação sem
permissão escrita do CMG Brasil.
13
Referências Bibliográficas
• Knuth, Donald. The Art of Programming, Fundamentals and Algorithms. Vol. 1 3th ed. Addison-Wesley. Reading, MA.
1997
• Moreno, G.; Smith, C. Performance analysis of real-time component architectures: An enhanced model interchange
approach. Performance Evaluation 67. Ed. Elsevier. 2010.
• Menascé, Daniel; Almeida, Virgilio. Capacity Planning for Web Services, Metrics, Models and Methods. Upper Saddle
River, NJ. 2002
• Sartoratto & Carvalho, 2008. A Proposal to Determine and Achieve the Amount of Resources Necessary and Sufficient for
Data Processing in Mainframes. 5th International Conference on Information Systems and Technology Management – FEA-
USP 4-6 June, 2008.