Mudanças entre as edições de "SGP Comparação de versões 01"

De MSTECH wiki
Ir para: navegação, pesquisa
(TOP 10 queries mais lentas)
(Resultado dos testes)
 
(4 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 34: Linha 34:
 
Foi possível observar os pontos listados abaixo durante a execução dos teste:
 
Foi possível observar os pontos listados abaixo durante a execução dos teste:
 
*1) A fila de disco ficou extremamente acima do recomendado durante todos os testes executados.
 
*1) A fila de disco ficou extremamente acima do recomendado durante todos os testes executados.
 +
*2) Houve melhora no geral na performance do banco de dados e no tempo das respostas da página.
 +
*3) Na tela de salvar aula o tempo de resposta foi melhor no Ambiente 01 em comparação com o Ambiente 02.
 +
*4) Em alguns momentos ocorre crash no navegador devido ao script carregado ao acessar a tela do listão a partir da tela de atividade.
 +
*5) Cerca de 75% dos requests totais tiveram a se sessão abandonada nos servidores web, aproximadamente.
 +
*6) Cerca de 0,5% dos requests totais tiveram time out nas sessões nos servidores web, aproximadamente.
 +
*7) Grande parte dos requests enviados foram bloqueados.
 +
*8) Grande parte dos erros ocorridos nos testes foram causados por dados.
  
 
=== Cenários dos testes ===
 
=== Cenários dos testes ===
Linha 1 840: Linha 1 847:
  
 
=== Resultado dos testes ===
 
=== Resultado dos testes ===
 +
 +
==== Comparação dos ambientes com o cenário V1 ====
 
Nesta seção serão apresentados os resultados obtidos da execução dos testes.
 
Nesta seção serão apresentados os resultados obtidos da execução dos testes.
  
*'''Processador'''  
+
*'''Processador e disco'''  
  
 
: Contador: Percentagem de tempo ocioso.
 
: Contador: Percentagem de tempo ocioso.
 
: Descrição: Este contador fornece quanto tempo o disco permaneceu em estado de repouso, ou seja, todos os pedidos do sistema operacional para o disco ter sido concluída e há zero de pedidos pendentes. Este contador varia de 100 (ou seja, sempre ocioso) para 0 (ou seja, sempre ocupado).
 
: Descrição: Este contador fornece quanto tempo o disco permaneceu em estado de repouso, ou seja, todos os pedidos do sistema operacional para o disco ter sido concluída e há zero de pedidos pendentes. Este contador varia de 100 (ou seja, sempre ocioso) para 0 (ou seja, sempre ocupado).
 
: Limite recomendado: Abaixo de 75 %.
 
: Limite recomendado: Abaixo de 75 %.
: Análise:  
+
: Análise: Encontra-se ocioso grande parte do tempo.
  
:::::: [[Arquivo:]]
+
:::::: [[Arquivo:SPG V1 TempoOcioso 2016-09-16.png]]
  
 
: Contador: Percentagem de espaço livre.
 
: Contador: Percentagem de espaço livre.
 
: Descrição: Mostra a porcentagem do espaço total utilizável no disco lógico selecionado.
 
: Descrição: Mostra a porcentagem do espaço total utilizável no disco lógico selecionado.
 
: Limite recomendado: Acima de 25%.
 
: Limite recomendado: Acima de 25%.
: Análise:  
+
: Análise: Aplicação encontra-se dentro do recomendado.
  
:::::: [[Arquivo:]]
+
:::::: [[Arquivo:GGP V1 EspacoLivre 2016-09-16.png]]
  
 
: Tempo total do processador.
 
: Tempo total do processador.
 
: Descrição: Mede a utilização da CPU de cada processador.
 
: Descrição: Mede a utilização da CPU de cada processador.
 
: Limite recomendado: Não exceder 80% por mais de 10 minutos ao longo do período de teste.
 
: Limite recomendado: Não exceder 80% por mais de 10 minutos ao longo do período de teste.
: Análise:  
+
: Análise: A aplicação encontra-se dentro do recomendado.
  
:::::: [[Arquivo:]]
+
:::::: [[Arquivo:SGP V1 TotalProcessador 2016-09-16.png]]
  
 
: Contador: Mudança de contexto.
 
: Contador: Mudança de contexto.
 
: Descrição: A mudança de contexto ocorre quando o kernel muda o processador de um segmento para outro, por exemplo, quando um segmento com uma prioridade maior do que o segmento em execução torna-se pronto.  
 
: Descrição: A mudança de contexto ocorre quando o kernel muda o processador de um segmento para outro, por exemplo, quando um segmento com uma prioridade maior do que o segmento em execução torna-se pronto.  
: Limite recomendado: Quanto menor melhor.
+
: Limite recomendado: 0-10.000 .
: Análise:  
+
: Análise: A taxa de mudanças de contexto de 500 a 2.000 por segundo pode indicar um problema com um adaptador de rede ou um driver de dispositivo ou que você está usando um aplicativo baseado em servidor ineficiente que gera muitos segmentos.
  
:::::: [[Arquivo:]]
+
:::::: [[Arquivo:SGP V1 MudancaContexto 2016-09-16.png]]
  
  
Linha 1 878: Linha 1 887:
 
: Descrição: Mede o número de páginas por segundo que são paginadas fora da memória RAM para a memória virtual.
 
: Descrição: Mede o número de páginas por segundo que são paginadas fora da memória RAM para a memória virtual.
 
: Limite recomendado: Se o número for alto indica falhas graves. O limite normalmente é de 20 páginas/s
 
: Limite recomendado: Se o número for alto indica falhas graves. O limite normalmente é de 20 páginas/s
: Análise:  
+
: Análise: Os valores podem indicar insuficiência de memória RAM, despesas gerais e degradação de desempenho. Também pode ser causada por leitura sequencial de um ficheiro mapeado na memória.
  
:::::: [[Arquivo:]]
+
:::::: [[Arquivo:SGP V1 PaginaS 2016-09-16.png]]
  
 
: Contador: % Memória virtual comprometida.
 
: Contador: % Memória virtual comprometida.
 
: Descrição: Indica a percentagem da memória comprometida utilizada dentro do limite dado pela soma da memória RAM e Page File.
 
: Descrição: Indica a percentagem da memória comprometida utilizada dentro do limite dado pela soma da memória RAM e Page File.
 
: Limite recomendado: Abaixo de 75% e que não tenha grande variação no indicador.
 
: Limite recomendado: Abaixo de 75% e que não tenha grande variação no indicador.
: Análise:  
+
: Análise: A aplicação utiliza um grande espaço no banco de dados, porém a utilização não possui grande variação.
  
:::::: [[Arquivo:]]
+
:::::: [[Arquivo:SGP V1 MemoriaComprometida 2016-09-16.png]]
  
  
Linha 1 893: Linha 1 902:
 
: Descrição: Indica quantidade de memória disponível para alocação em MBytes.
 
: Descrição: Indica quantidade de memória disponível para alocação em MBytes.
 
: Limite recomendado: Se o valor for inferior a 20/25 por cento de RAM instalada é uma indicação de memória insuficiente. Menos de 100 MB é uma indicação de que o sistema é muito carente de memória e paginação.
 
: Limite recomendado: Se o valor for inferior a 20/25 por cento de RAM instalada é uma indicação de memória insuficiente. Menos de 100 MB é uma indicação de que o sistema é muito carente de memória e paginação.
: Análise:  
+
: Análise: Necessário um servidor com grande quantidade de memória para a aplicação.
  
:::::: [[Arquivo:]]
+
:::::: [[Arquivo:SGP V1 MemoriaDisponivel 2016-09-16.png]]
  
  
Linha 1 903: Linha 1 912:
 
: Descrição: Indica quantos Kbytes foram enviados e recebidos a cada segundo pela interface de rede.
 
: Descrição: Indica quantos Kbytes foram enviados e recebidos a cada segundo pela interface de rede.
 
: Limite recomendado: Menor que 5 Mbytes para uma rede de 100Mbps, menor que 50 Mbytes para uma rede de 1000 Mbps. (Quanto menor melhor).
 
: Limite recomendado: Menor que 5 Mbytes para uma rede de 100Mbps, menor que 50 Mbytes para uma rede de 1000 Mbps. (Quanto menor melhor).
: Análise:  
+
: Análise: Quantidade de dados trafegados na rede é muito variável.
  
:::::: [[Arquivo:]]
+
:::::: [[Arquivo:SGP V1 InterfaceRede 2016-09-16.png]]
  
 
: Contador: Falhas de conexão (TCP)
 
: Contador: Falhas de conexão (TCP)
 
: Descrição: Este é o número bruto de conexões TCP que falharam desde que o servidor foi iniciado. Uma falha normalmente indica uma perda de dados em lugar no processo. A perda pode ocorrer em muitos locais. Esta poderia ser uma indicação de um outro dispositivo que está sendo para baixo, ou problemas com a configuração do lado do cliente do software.  
 
: Descrição: Este é o número bruto de conexões TCP que falharam desde que o servidor foi iniciado. Uma falha normalmente indica uma perda de dados em lugar no processo. A perda pode ocorrer em muitos locais. Esta poderia ser uma indicação de um outro dispositivo que está sendo para baixo, ou problemas com a configuração do lado do cliente do software.  
 
: Limite recomendado: Quanto menor melhor.
 
: Limite recomendado: Quanto menor melhor.
: Análise:
 
  
:::::: [[Arquivo:]]
+
:::::: [[Arquivo:SGP V1 ConexaoFalha 2016-09-16.png]]
  
 +
==== Comparação dos ambientes com o cenário V3 ====
 +
Nesta seção serão apresentados os resultados obtidos da execução dos testes.
  
*'''SQL'''  
+
*'''Processador'''  
  
: Contador: Expectativa de vida da página.
+
: Contador: Percentagem de tempo ocioso.
: Descrição: Indica o número em segundos que uma página vai ficar na área de buffers, sem referências.
+
: Descrição: Este contador fornece quanto tempo o disco permaneceu em estado de repouso, ou seja, todos os pedidos do sistema operacional para o disco ter sido concluída e há zero de pedidos pendentes. Este contador varia de 100 (ou seja, sempre ocioso) para 0 (ou seja, sempre ocupado).
: Limite recomendado: Quanto menor melhor.
+
: Limite recomendado: Abaixo de 75 %.
 +
: Análise: Houve uma sobrecarga em um dos ambientes web.
  
:::::: [[Arquivo:]]
+
:::::: [[Arquivo:SGP V3 TempoOcioso 2016-09-16.png]]
  
: Contador: Número de deadlocks por segundo.
+
: Contador: Percentagem de espaço livre.
: Descrição: Informa a contagem de quantos deadlocks estão ocorrendo por segundo no sistema.
+
: Descrição: Mostra a porcentagem do espaço total utilizável no disco lógico selecionado.
: Limite recomendado: Quanto menor melhor.
+
: Limite recomendado: Acima de 25%.
 +
: Análise: Houve uma sobrecarga em um dos ambientes web.
  
:::::: [[Arquivo:]]
+
:::::: [[ArquivoSGP V3 EspacoLivre 16-09-16.png]]
  
: Contador: Request bloqueados.
+
: Tempo total do processador.
: Descrição: Informa a quantidade de resquest bloqueados.
+
: Descrição: Mede a utilização da CPU de cada processador.
: Limite recomendado: Quanto menor melhor.
+
: Limite recomendado: Não exceder 80% por mais de 10 minutos ao longo do período de teste.
 +
: Análise: Houve uma sobrecarga em um dos ambientes web.
 +
 
 +
:::::: [[AGP V3 TempoTotalProcessador 2016-09-16.png]]
 +
 
 +
: Contador: Mudança de contexto.
 +
: Descrição: A mudança de contexto ocorre quando o kernel muda o processador de um segmento para outro, por exemplo, quando um segmento com uma prioridade maior do que o segmento em execução torna-se pronto.
 +
: Limite recomendado: 0-10.000 .
 +
: Análise: A taxa de mudanças de contexto de 500 a 2.000 por segundo pode indicar um problema com um adaptador de rede ou um driver de dispositivo ou que você está usando um aplicativo baseado em servidor ineficiente que gera muitos segmentos.
 +
 
 +
:::::: [[Arquivo:SGP V3 MudancaContexto 2016-09-16.png]]
 +
 
 +
 
 +
*'''Memória'''
 +
 
 +
: Contador: Páginas/segundo.
 +
: Descrição: Mede o número de páginas por segundo que são paginadas fora da memória RAM para a memória virtual.
 +
: Limite recomendado: Se o número for alto indica falhas graves. O limite normalmente é de 20 páginas/s
 +
: Análise: Os valores podem indicar insuficiência de memória RAM, despesas gerais e degradação de desempenho. Também pode ser causada por leitura sequencial de um ficheiro mapeado na memória.
 +
 
 +
:::::: [[Arquivo:SGP V3 PaginaS 2016-09-16.png]]
 +
 
 +
: Contador: % Memória virtual comprometida.
 +
: Descrição: Indica a percentagem da memória comprometida utilizada dentro do limite dado pela soma da memória RAM e Page File.
 +
: Limite recomendado: Abaixo de 75% e que não tenha grande variação no indicador.
 +
: Análise: A aplicação utiliza um grande espaço no banco de dados, porém a utilização não possui grande variação.
 +
 
 +
:::::: [[Arquivo:SGP V3 MemoriaComprometida 2016-09-16.png]]
 +
 
 +
 
 +
: Contador: Memória disponível em MBytes.
 +
: Descrição: Indica quantidade de memória disponível para alocação em MBytes.
 +
: Limite recomendado: Se o valor for inferior a 20/25 por cento de RAM instalada é uma indicação de memória insuficiente. Menos de 100 MB é uma indicação de que o sistema é muito carente de memória e paginação.
 +
: Análise: Necessário um servidor com grande quantidade de memória para a aplicação.
  
:::::: [[Arquivo:]]
+
:::::: [[Arquivo:SGP V3 MemoriaDisponível 2016-09-16.png]]

Edição atual tal como às 17h14min de 21 de novembro de 2016

Sistemas Verificados

  • SGP, versão 1.58.1.0
  • SGP, versão 1.60.0.0
  • CoreSSO, versão 1.29.0.0

Verificação de Segurança

Em verificação.


Verificação de Desempenho

Observação do teste

Para a realização dos testes foram criados três casos de testes diferentes para verificação do ambientes, os mesmos estão identificados como Cenário V1 para os cenários da versão um dos testes, Cenário V2 para os cenários da versão dois dos testes e Cenário V3 para os cenários da versão três dos testes. Para o think time das ações do usuário foi utilizada o temporizador gaussiano.

Os testes tiveram foco na verificação na alteração do banco realizado da versão 1.58.1.0 para a versão 1.60.0.0. A primeira versão estará identificada como Ambiente V1, enquanto a segunda versão verificada estará como Ambiente V2.

O teste foi executado em várias etapas variando a quantidade a quantidade de 400 a 1200 usuários simultâneos, de acordo com a versão do teste executado. Os teste foram executados por 30 minutos, sendo utilizados:

  • 1 Servidor de bando de dados com 199GB de capacidade;
  • 8 Servidores web com 99,6GB de capacidade;
  • 4 Test agent com 12GB de capacidade;
  • 1 Teste controller com 16 GB de capacidade;

Análise do teste

  • Dados obtidos em ambos os ambientes

A aplicação não utiliza muito processamento, estando o disco na maior parte do tempo ocioso. Referente ao processador foi observada uma elevada taxa de mudança de contexto, o que significa que o processador é compartilhado repetidamente, por exemplo, por muitos segmentos de igual prioridade. A alta taxa de contexto-chave muitas vezes indica que existem muitos segmentos que competem para os processadores no sistema. A taxa de trocas de contexto também pode afetar o desempenho de computadores com múltiplos processadores.

Em contrapartida o sistema utiliza uma grande quantidade de memória, tanto física quanto virtual. A principal utilização de memória é realizada pelo banco de dados, seguido pelos servidores web.

Foi possível observar os pontos listados abaixo durante a execução dos teste:

  • 1) A fila de disco ficou extremamente acima do recomendado durante todos os testes executados.
  • 2) Houve melhora no geral na performance do banco de dados e no tempo das respostas da página.
  • 3) Na tela de salvar aula o tempo de resposta foi melhor no Ambiente 01 em comparação com o Ambiente 02.
  • 4) Em alguns momentos ocorre crash no navegador devido ao script carregado ao acessar a tela do listão a partir da tela de atividade.
  • 5) Cerca de 75% dos requests totais tiveram a se sessão abandonada nos servidores web, aproximadamente.
  • 6) Cerca de 0,5% dos requests totais tiveram time out nas sessões nos servidores web, aproximadamente.
  • 7) Grande parte dos requests enviados foram bloqueados.
  • 8) Grande parte dos erros ocorridos nos testes foram causados por dados.

Cenários dos testes

  • Cenário V1
Cenário de uso #1 - Criar aula (18% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
1 - Acessar tela de login 5 1
1 - Realizar login 10 2
1 - Acessar diário de classe 5 1
1 - Clicar em "Incluir aula" 3 1
1 - Abrir calendário 3 1
1 - Salvar aula 1 10 2
1 - Salvar aula 2 10 2
1 - Logout 3 1


Cenário de uso #2 - Lançar frequência (8% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
2 - Acessar tela de consulta de material 5 1
2 - Realizar login 10 2
2 - Abrir minhas turmas 4 1
2 - Abrir diário de classe 5 1
2 - Abrir lançamento de frequência 5 1
2 - Salvar lançamento de frequência 10 2
2 - Logout 3 1


Cenário de uso #3 - Lançar notas (8% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
2 - Acessar tela de login 5 1
3 - Realizar login 10 2
3 - Abrir minhas turmas 4 1
3 - Abrir diário de classe 5 1
3 - Abrir atividade avaliativa 5 1
3 - Selecionar tipo de atividade 5 2
3 - Adicionar atividade avaliativa 10 2
3 - Salvar lançamento de notas 15 3
3 - Logout 3 1


Cenário de uso #4 - Criar atividade avaliativa (8% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
4 - Acessar tela de login 5 1
4 - Realizar login 10 2
4 - Abrir minhas turmas 4 1
4 - Abrir diário de classe 5 1
4 - Abrir atividade avaliativa 5 1
4 - Selecionar tipo de atividade 5 1
4 - Adicionar atividade avaliativa 10 2
4 - Logout 3 1


Cenário de uso #5 - Salvar listão (10% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
5 - Acessar tela de login 5 1
5 - Realizar login 10 2
5 - Abrir minhas turmas 4 1
5 - Abrir listão 5 1
5 - Salvar listão 30 6
5 - Logout 3 1


Cenário de uso #6 - Fechamento (18% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
6 - Acessar tela de login 5 1
6 - Realizar login 10 2
6 - Abrir minhas turmas 4 1
6 - Abrir fechamento 5 1
6 - Logout 3 1


Cenário de uso #7 - Planejamento anual e fechamento (2% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
7 - Acessar tela de login 5 1
7 - Realizar login 10 2
7 - Abrir minhas turmas 4 1
7 - Abrir planejamento 5 1
7 - Editar planejamento 3 1
7 - Salvar planejamento 15 3
7 - Replicar planejamento 5 1
7 - Abrir minhas turmas 4 1
7 - Abrir fechamento 5 1
7 - Logout 3 1


Cenário de uso #8 - Notas pós conselho (2% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
8 - Acessar tela de login 5 1
8 - Realizar login 10 2
8 - Abrir minhas turmas 4 1
8 - Abrir fechamento 5 1
8 - Salvar nota pós conselho 15 3
8 - Logout 3 1


Cenário de uso #9 - Visualizar boletim (1% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
9 - Acessar tela de login 5 1
9 - Realizar login 10 2
9 - Abrir minhas turmas 4 1
9 - Abrir alunos 5 1
9 - Abrir boletim do aluno 5 1
9 - Selecionar 2º bimestre 10 2
9 - Selecionar 1º bimestre 10 2
9 - Logout 3 1


Cenário de uso #10 - Criar compensação (1% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
10 - Acessar tela de login 5 1
10 - Realizar login 10 2
10 - Abrir minhas turmas 4 1
10 - Abrir listão 5 1
10 - Abrir compensação de ausência 5 1
10 - Preencher campos 9 2
10 - Salvar compensação 10 1
10 - Logout 3 1


Cenário de uso #11 - Relatório tarjeta para o docente (2% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
11 - Acessar tela de login 5 1
11 - Realizar login 10 2
11 - Abrir documentos do docente 5 1
11 - Selecionar tarjeta bimestral 5 1
11 - Selecionar escola 5 1
11 - Selecionar turma 5 1
11 - Selecionar bimestre 5 1
11 - Gerar relatório 5 1
11 - Logout 3 1


Cenário de uso #12 - Relatório ata final de resultados (1% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
12 - Acessar tela de login 5 1
12 - Realizar login 10 2
12 - Acessar ata final de resultado 5 1
12 - Selecionar período 5 1
12 - Selecionar curso 5 1
12 - Gerar relatório 4 1
12 - Logout 3 1


Cenário de uso #13 - Pendências de fechamento (15% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
13 - Acessar tela de login 5 1
13 - Realizar login 10 2
13 - Abrir minhas turmas 5 1
13 - Visualizar pendências de fechamento 5 1
13 - Logout 3 1



Cenário de uso #14 - Pendências de fechamento gestor (2% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
14 - Acessar tela de login 5 1
14 - Realizar login 10 2
14 - Abrir minhas escola 5 1
14 - Visualizar pendências de fechamento 5 1
14 - Logout 3 1



Cenário de uso #15 - Nota pós conselho (2% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
15 - Acessar tela de login 5 1
15 - Realizar login 10 2
15 - Selecionar calendário 5 1
15 - Exibir alunos 5 1
15 - Selecionar alunos 5 1
15 - Salvar nota pós conselho 15 3
15 - Logout 3 1



Cenário de uso #16 - Relatório do boletim para a turma (1% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
16 - Acessar tela de login 5 1
16 - Realizar login 10 2
16 - Documento do aluno 5 1
16 - Boletim escolar 6 1
16 - Selecionar período 6 1
16 - Clicar em "Pesquisar" 3 3
16 - Clicar em "Gerar documento" 6 1
16 - Selecionar período 3 1
16 - Logout 3 1


  • Cenário V2
Cenário de uso #1 - Cenário docente 01 (Aulas) (67% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
1 - Acessar tela de login 5 1
1 - Realizar login 10 2
- - - - - - - - - Pendências - - - - - - - - - - - -
1 - Visualizar pendências de fechamento 5 1
1 - Clicar em "Voltar" 3 1
- - - - - - - - - Criar aula - - - - - - - - - - - -
1 - Acessar diário de classe 5 1
1 - Clicar em "Incluir aula" 3 1
1 - Abrir calendário 3 1
1 - Salvar aula 1 10 2
1 - Salvar aula 2 10 2
1 - Clicar em "Incluir aula" 3 1
1 - Abrir calendário 3 1
1 - Salvar aula 1 10 2
1 - Salvar aula 2 10 2
1 - Clicar em "Incluir aula" 3 1
1 - Abrir calendário 3 1
1 - Salvar aula 1 10 2
1 - Salvar aula 2 10 2
1 - Clicar em "Incluir aula" 3 1
1 - Abrir calendário 3 1
1 - Salvar aula 1 10 2
1 - Salvar aula 2 10 2
1 - Clicar em "Incluir aula" 3 1
1 - Abrir calendário 3 1
1 - Salvar aula 1 10 2
1 - Salvar aula 2 10 2
1 - Clicar em "Incluir aula" 3 1
1 - Abrir calendário 3 1
1 - Salvar aula 1 10 2
1 - Salvar aula 2 10 2
- - - - - - - - - Lançar frequência - - - - - - - - - - - -
1 - Abrir lançamento de frequência 5 1
1 - Salvar lançamento de frequência 15 3
1 - Abrir lançamento de frequência 5 1
1 - Salvar lançamento de frequência 15 3
1 - Abrir lançamento de frequência 5 1
1 - Salvar lançamento de frequência 15 3
1 - Abrir lançamento de frequência 5 1
1 - Salvar lançamento de frequência 15 3
1 - Abrir lançamento de frequência 5 1
1 - Salvar lançamento de frequência 15 3
1 - Abrir minhas turmas 4 1
- - - - - - - - - Salvar listão - - - - - - - - - - - -
1 - Abrir listão 5 1
1 - Salvar listão 30 6
1 - Salvar listão 30 6
1 - Salvar listão 30 6
1 - Salvar listão 30 6
1 - Salvar listão 30 6
- - - - - - - - - Visualizar boletim - - - - - - - - - - - -
1 - Abrir minhas turmas 4 1
1 - Abrir fechamento 5 1
1 - Abrir minhas turmas 4 1
1 - Abrir alunos 4 1
1 - Abrir boletim do aluno 5 1
1 - Selecionar 2º bimestre 10 2
1 - Selecionar 1º bimestre 10 2
1 - Logout 3 1


Cenário de uso #2 - Cenário docente 01 (Atividades) (15% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
2 - Acessar tela de login 5 1
2 - Realizar login 10 2
- - - - - - - - - Criar atividades avaliativas - - - - - - - - - - - -
2 - Abrir atividade avaliativa 5 1
2 - Selecionar tipo de atividade 5 1
2 - Adicionar atividade avaliativa 10 2
- - - - - - - - - Lançar notas - - - - - - - - - - - -
2 - Abrir atividade avaliativa 5 1
2 - Selecionar tipo de atividade 5 1
2 - Adicionar atividade avaliativa 10 2
2 - Salvar lançamento de notas 15 3
2 - Logout 3 1


Cenário de uso #3 - Criar compensação (Docente) (2% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
3 - Acessar tela de login 5 1
3 - Realizar login 10 2
3 - Abrir minhas turmas 4 1
3 - Abrir listão 5 1
3 - Abrir compensação de ausência 5 1
3 - Preencher campos 10 2
3 - Salvar compensação 10 2
3 - Logout 3 1


Cenário de uso #4 - Planejamento atual e fechamento (2% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
4 - Acessar tela de login 5 1
4 - Realizar login 10 2
- - - - - - - - - Planejamento anual - - - - - - - - - - -
4 - Abrir minhas turmas 4 1
4 - Abrir planejamento 5 1
4 - Editar planejamento 3 1
4 - Salvar planejamento 15 3
4 - Replicar planejamento 5 1
- - - - - - - - - Fechamento - - - - - - - - - - -
4 - Abrir minhas turmas 5 1
4 - Abrir fechamento 5 1
4 - Logout 3 1


Cenário de uso #5 - Nota pós conselho (Por docente) (5% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
5 - Acessar tela de login 5 1
5 - Realizar login 10 2
5 - Abrir minhas turmas 4 1
5 - Abrir fechamento 5 1
5 - Selecionar calendário 5 1
5 - Salvar nota 15 3
5 - Replicar planejamento 5 1
5 - Logout 3 1


Cenário de uso #6 - Relatório de tarjeta para o docente (2% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
6 - Acessar tela de login 5 1
6 - Realizar login 10 2
6 - Abrir documentos do docente 5 1
6 - Selecionar tarjeta bimestral 5 1
6 - Selecionar escola 5 1
6 - Selecionar turma 5 1
6 - Selecionar bimestre 5 1
6 - Gerar relatório 5 1
6 - Logout 3 1


Cenário de uso #7 - Relatório ata final de resultados (1% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
7 - Acessar tela de login 5 1
7 - Realizar login 10 2
7 - Acessar ata final de resultados 5 1
7 - Selecionar período 5 1
7 - Selecionar curso 5 1
7 - Gerar relatório 4 1
7 - Logout 3 1


Cenário de uso #8 - Pendências de fechamento (Gestor) (3% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
8 - Acessar tela de login 5 1
8 - Realizar login 10 2
8 - Abrir minha escola 5 1
8 - Visualizar pendências de fechamento 5 1
8 - Logout 3 1


Cenário de uso #9 - Nota pós conselho (Gestor) (2% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
9 - Acessar tela de login 5 1
9 - Realizar login 10 2
9 - Abrir fechamento do bimestre 5 1
9 - Selecionar calendário 5 1
9 - Exibir alunos 5 1
9 - Selecionar aluno 5 1
9 - Salvar nota pós conselho 15 3
9 - Logout 3 1


Cenário de uso #10 - Relatório do boletim para a turma (Gestor) (1% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
10 - Acessar tela de login 5 1
10 - Realizar login 10 2
10 - Documentos do aluno 5 1
10 - Boletim escolar 6 1
10 - Selecionar período 6 1
10 - Clicar em "Pesquisar" 3 1
10 - Clicar em "Gerar documento" 5 1
10 - Selecionar período 5 1
10 - Logout 3 1


  • Cenário V3
Cenário de uso #1 - Cenário docente 01 (Aulas) (67% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
1 - Acessar tela de login 5 1
1 - Realizar login 10 2
- - - - - - - - - Pendências - - - - - - - - - - - -
1 - Visualizar pendências de fechamento 5 1
1 - Clicar em "Voltar" 3 1
- - - - - - - - - Criar aula - - - - - - - - - - - -
1 - Acessar diário de classe 5 1
1 - Clicar em "Incluir aula" 3 1
1 - Abrir calendário 3 1
1 - Salvar aula 1 10 2
1 - Salvar aula 2 10 2
1 - Clicar em "Incluir aula" 3 1
1 - Abrir calendário 3 1
1 - Salvar aula 1 10 2
1 - Salvar aula 2 10 2
1 - Clicar em "Incluir aula" 3 1
1 - Abrir calendário 3 1
1 - Salvar aula 1 10 2
1 - Salvar aula 2 10 2
1 - Clicar em "Incluir aula" 3 1
1 - Abrir calendário 3 1
1 - Salvar aula 1 10 2
1 - Salvar aula 2 10 2
1 - Clicar em "Incluir aula" 3 1
1 - Abrir calendário 3 1
1 - Salvar aula 1 10 2
1 - Salvar aula 2 10 2
1 - Clicar em "Incluir aula" 3 1
1 - Abrir calendário 3 1
1 - Salvar aula 1 10 2
1 - Salvar aula 2 10 2
- - - - - - - - - Lançar frequência - - - - - - - - - - - -
1 - Abrir lançamento de frequência 5 1
1 - Salvar lançamento de frequência 15 3
1 - Abrir lançamento de frequência 5 1
1 - Salvar lançamento de frequência 15 3
1 - Abrir lançamento de frequência 5 1
1 - Salvar lançamento de frequência 15 3
1 - Abrir lançamento de frequência 5 1
1 - Salvar lançamento de frequência 15 3
1 - Abrir lançamento de frequência 5 1
1 - Salvar lançamento de frequência 15 3
1 - Abrir minhas turmas 4 1
- - - - - - - - - Salvar listão - - - - - - - - - - - -
1 - Abrir listão 5 1
1 - Salvar listão 30 6
1 - Salvar listão 30 6
1 - Salvar listão 30 6
1 - Salvar listão 30 6
1 - Salvar listão 30 6
- - - - - - - - - Visualizar boletim - - - - - - - - - - - -
1 - Abrir minhas turmas 4 1
1 - Abrir fechamento 5 1
1 - Abrir minhas turmas 4 1
1 - Abrir alunos 4 1
1 - Abrir boletim do aluno 5 1
1 - Selecionar 2º bimestre 10 2
1 - Selecionar 1º bimestre 10 2
1 - Logout 3 1



Cenário de uso #2 - Cenário docente 01 (Atividades) (15% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
2 - Acessar tela de login 5 1
2 - Realizar login 10 2
- - - - - - - - - Criar atividades avaliativas - - - - - - - - - - - -
2 - Abrir atividade avaliativa 5 1
2 - Selecionar tipo de atividade 5 1
2 - Adicionar atividade avaliativa 10 2
2 - Clicar em "Listão" 10 2
2 - Clicar em "Salvar" 30 6
- - - - - - - - - Lançar notas - - - - - - - - - - - -
2 - Abrir atividade avaliativa 5 1
2 - Selecionar tipo de atividade 5 1
2 - Adicionar atividade avaliativa 10 2
2 - Salvar lançamento de notas 15 3
2 - Logout 3 1


Cenário de uso #3 - Criar compensação (Docente) (2% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
3 - Acessar tela de login 5 1
3 - Realizar login 10 2
3 - Abrir minhas turmas 4 1
3 - Abrir listão 5 1
3 - Abrir compensação de ausência 5 1
3 - Preencher campos 10 2
3 - Salvar compensação 10 2
3 - Logout 3 1


Cenário de uso #4 - Planejamento atual e fechamento (2% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
4 - Acessar tela de login 5 1
4 - Realizar login 10 2
- - - - - - - - - Planejamento anual - - - - - - - - - - -
4 - Abrir minhas turmas 4 1
4 - Abrir planejamento 5 1
4 - Editar planejamento 3 1
4 - Salvar planejamento 15 3
4 - Replicar planejamento 5 1
- - - - - - - - - Fechamento - - - - - - - - - - -
4 - Abrir minhas turmas 5 1
4 - Abrir fechamento 5 1
4 - Logout 3 1


Cenário de uso #5 - Nota pós conselho (Por docente) (5% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
5 - Acessar tela de login 5 1
5 - Realizar login 10 2
5 - Abrir minhas turmas 4 1
5 - Abrir fechamento 5 1
5 - Selecionar calendário 5 1
5 - Salvar nota 15 3
5 - Replicar planejamento 5 1
5 - Logout 3 1


Cenário de uso #6 - Relatório de tarjeta para o docente (2% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
6 - Acessar tela de login 5 1
6 - Realizar login 10 2
6 - Abrir documentos do docente 5 1
6 - Selecionar tarjeta bimestral 5 1
6 - Selecionar escola 5 1
6 - Selecionar turma 5 1
6 - Selecionar bimestre 5 1
6 - Gerar relatório 5 1
6 - Logout 3 1


Cenário de uso #7 - Relatório ata final de resultados (1% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
7 - Acessar tela de login 5 1
7 - Realizar login 10 2
7 - Acessar ata final de resultados 5 1
7 - Selecionar período 5 1
7 - Selecionar curso 5 1
7 - Gerar relatório 4 1
7 - Logout 3 1


Cenário de uso #8 - Pendências de fechamento (Gestor) (3% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
8 - Acessar tela de login 5 1
8 - Realizar login 10 2
8 - Abrir minha escola 5 1
8 - Visualizar pendências de fechamento 5 1
8 - Logout 3 1


Cenário de uso #9 - Nota pós conselho (Gestor) (2% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
9 - Acessar tela de login 5 1
9 - Realizar login 10 2
9 - Abrir fechamento do bimestre 5 1
9 - Selecionar calendário 5 1
9 - Exibir alunos 5 1
9 - Selecionar aluno 5 1
9 - Salvar nota pós conselho 15 3
9 - Logout 3 1


Cenário de uso #10 - Relatório do boletim para a turma (Gestor) (1% de vazão)
Ação realizada Think Time: Atraso constante (segundos) Think Time: Desvio (segundos)
10 - Acessar tela de login 5 1
10 - Realizar login 10 2
10 - Documentos do aluno 5 1
10 - Boletim escolar 6 1
10 - Selecionar período 6 1
10 - Clicar em "Pesquisar" 3 1
10 - Clicar em "Gerar documento" 5 1
10 - Selecionar período 5 1
10 - Logout 3 1

TOP 10 queries mais lentas

  • Ambiente V1
  1. Item 01
 1 MERGE REL_AlunosSituacaoFechamento WITH (HOLDLOCK) AS Destino
 2 			USING @AlunoSituacaoFechamentoOrigem AS Origem
 3 			ON
 4 			(
 5 				Destino.esc_id = Origem.esc_id 
 6 				AND Destino.tur_id = Origem.tur_id
 7 				AND Destino.cal_id = Origem.cal_id
 8 				AND Destino.tpc_id = Origem.tpc_id
 9 				AND Destino.alu_id = Origem.alu_id
10 				AND Destino.mtu_id = Origem.mtu_id
11 				AND Destino.mtd_id = Origem.mtd_id
12 				AND Destino.tud_id = Origem.tud_id
13 			)
14 			WHEN NOT MATCHED THEN
15 				INSERT
16 					([uad_nomeSuperior]
17 				   ,[esc_nome]
18 				   ,[tci_nome]
19 				   ,[crp_descricao]
20 				   ,[tur_codigo]
21 				   ,[cal_ano]
22 				   ,[tpc_nome]
23 				   ,[pes_nome]
24 				   ,[tud_nome]
25 				   ,[uad_idSuperior]
26 				   ,[esc_id]
27 				   ,[tci_id]
28 				   ,[cur_id]
29 				   ,[crr_id]
30 				   ,[crp_id]
31 				   ,[tur_id]
32 				   ,[cal_id]
33 				   ,[tpc_id]
34 				   ,[alu_id]
35 				   ,[mtu_id]
36 				   ,[mtd_id]
37 				   ,[tud_id]
38 				   ,[tud_tipo]
39 				   ,[SemNota]
40 				   ,[SemSintese]
41 				   ,[SemResultadoFinal]
42 				   ,[SemParecer]
43 				   ,[DisciplinaSemAula]
44 				   ,[DataRegistro])
45 				VALUES
46 				(Origem.DRE
47 				   ,Origem.Escola
48 				   ,Origem.Ciclo
49 				   ,Origem.Serie
50 				   ,Origem.Turma
51 				   ,Origem.AnoLetivo
52 				   ,Origem.Bimestre
53 				   ,Origem.Aluno
54 				   ,Origem.Disciplina
55 				   ,Origem.uad_idSuperior
56 				   ,Origem.esc_id
57 				   ,Origem.tci_id
58 				   ,Origem.cur_id
59 				   ,Origem.crr_id
60 				   ,Origem.crp_id
61 				   ,Origem.tur_id
62 				   ,Origem.cal_id
63 				   ,Origem.tpc_id
64 				   ,Origem.alu_id
65 				   ,Origem.mtu_id
66 				   ,Origem.mtd_id
67 				   ,Origem.tud_id
68 				   ,Origem.tud_tipo
69 				   ,Origem.SemNota
70 				   ,Origem.SemSintese
71 				   ,Origem.SemResultadoFinal
72 				   ,Origem.SemParecer
73 				   ,Origem.DisciplinaSemAula
74 				   ,Origem.DataRegistro)
75 			WHEN MATCHED THEN
76 				UPDATE SET 
77 					SemNota = Origem.SemNota,
78 					SemSintese = Origem.SemSintese,
79 					SemResultadoFinal = Origem.SemResultadoFinal,
80 					SemParecer = Origem.SemParecer,
81 					DisciplinaSemAula = Origem.DisciplinaSemAula,
82 					DataRegistro = Origem.DataRegistro;
  1. Item 02
 1 WITH JustificativasRecPar AS
 2 			(
 3 				SELECT 
 4 					Tud.tud_id, Tud.tpc_id
 5 				FROM @AlunosDisciplinasPendencias Tud
 6 				INNER JOIN CLS_FechamentoJustificativaPendencia Fjp WITH(NOLOCK)
 7 					ON Fjp.tud_id = Tud.tud_id
 8 					AND Fjp.tpc_id = Tud.tpc_id
 9 					AND Fjp.fjp_situacao <> 3
10 				WHERE
11 					Tud.tur_tipo = 2
12 			)
13 
14 			UPDATE P
15 			SET P.DisciplinaSemAula = 0,
16 				P.SemNota = 0
17 			FROM JustificativasRecPar J
18 			INNER JOIN @AlunosDisciplinasPendencias P
19 				ON P.tud_id = J.tud_id
20 				AND P.tpc_id = J.tpc_id
  1. Item 03
 1 INSERT INTO @AlunosDisciplinasPendencias
 2 			(alu_id, mtu_id, mtd_id, tur_id, tud_id, tud_naoLancarNota, tpc_id, tud_nome, tud_tipo, tur_tipo)
 3 			SELECT
 4 				Mtr.alu_id, Mtr.mtu_id, Mtd.mtd_id, Mtr.tur_id, Mtd.tud_id, ISNULL(tud_naoLancarNota, 0), Tur.tpc_id, tud_nome, tud_tipo, Tur.tur_tipo
 5 			FROM @MatriculaTurma Mtu
 6 			INNER JOIN @EscolasTurmasDisciplinasPeriodos Tur
 7 				ON Tur.tur_id = Mtu.tur_id
 8 			INNER JOIN MTR_MatriculasBoletim Mtr WITH(NOLOCK)
 9 				ON Mtr.alu_id = Mtu.alu_id
10 				AND Mtr.mtu_origemDados = Mtu.mtu_id
11 				AND Mtr.tur_id = Mtu.tur_id
12 				AND Mtr.tpc_id = Tur.tpc_id
13 				AND Mtr.PossuiSaidaPeriodo = 0
14 				AND Mtr.registroExterno = 0
15 			-- Pegar tud_id e mtd_id pelo mtu_id, para buscar as EFs.
16 			INNER JOIN MTR_MatriculaTurmaDisciplina Mtd WITH(NOLOCK)
17 				ON Mtd.alu_id = Mtr.alu_id
18 				AND Mtd.mtu_id = Mtr.mtu_id
19 				AND Mtd.tud_id = Tur.tud_id
20 				AND Mtd.mtd_situacao <> 3
21 			INNER JOIN TUR_TurmaDisciplina Tud WITH(NOLOCK)
22 				ON Tud.tud_id = Mtd.tud_id
23 				AND Tud.tud_situacao <> 3
24 				-- Não trazer 11-Regência - só verifica nota nos seus componentes.
25 				-- Não trazer 17-Compartilhada.
26 				-- Não trazer 10-Eletiva.
27 				-- Não trazer 14-Ed. Física Multiseriada
28 				AND tud.tud_tipo NOT IN (10, 11, 14, 17)
  1. Item 04
 1 WITH AlunosComNota AS
 2 			(
 3 				-- Alunos com lançamento de nota ok.
 4 				SELECT Mtr.tud_id, Mtr.tur_id, Mtr.alu_id, Mtr.mtu_id, Mtr.mtd_id, Mtr.tpc_id
 5 				FROM @AlunosDisciplinasPendencias Mtr
 6 				INNER JOIN @EscolasTurmasDisciplinasPeriodos Tur
 7 					ON Tur.tur_id = Mtr.tur_id
 8 					AND Tur.tud_id = Mtr.tud_id
 9 					AND tur.tpc_id = Mtr.tpc_id
10 				INNER JOIN CLS_AlunoAvaliacaoTurmaDisciplina AS Atd WITH (NOLOCK)
11 					ON Atd.tud_id = Mtr.tud_id
12 					AND Atd.alu_id = Mtr.alu_id
13 					AND Atd.mtu_id = Mtr.mtu_id
14 					AND Atd.mtd_id = Mtr.mtd_id
15 					AND Atd.fav_id = Tur.fav_id
16 					AND Atd.ava_id = Tur.ava_id
17 					AND Atd.atd_situacao <> 3
18 				WHERE
19 					(
20 						(
21 							-- Caso tenha que lançar nota, traz registros que possuam nota.
22 							tud_naoLancarNota = 0 AND 
23 							NOT (COALESCE(atd_avaliacaoPosConselho, atd_avaliacao, '') = '') 
24 						)
25 					OR 
26 						-- Caso não seja de lançar nota, traz o registro somente.
27 						(tud_naoLancarNota = 1)
28 					)
29 			)
30 			UPDATE @AlunosDisciplinasPendencias
31 			SET SemNota = 0
32 			FROM AlunosComNota Alu
33 			INNER JOIN @AlunosDisciplinasPendencias P
34 				ON P.tur_id = Alu.tur_id
35 				AND P.tud_id = Alu.tud_id
36 				AND P.alu_id = Alu.alu_id
37 				AND P.mtu_id = Alu.mtu_id
38 				AND P.mtd_id = Alu.mtd_id
39 				AND P.tpc_id = Alu.tpc_id
  1. Item 05
 1 DELETE asf
 2 			FROM REL_AlunosSituacaoFechamento asf WITH(NOLOCK)
 3 			INNER JOIN @tbPendencias pen
 4 				ON asf.tud_id = pen.tud_id
 5 				AND asf.tpc_id = pen.tpc_id
 6 			WHERE
 7 				NOT EXISTS
 8 				(
 9 					SELECT TOP 1 1
10 					FROM @AlunoSituacaoFechamentoOrigem Origem
11 					WHERE asf.esc_id = Origem.esc_id 
12 					AND asf.tur_id = Origem.tur_id
13 					AND asf.cal_id = Origem.cal_id
14 					AND asf.tpc_id = Origem.tpc_id
15 					AND asf.alu_id = Origem.alu_id
16 					AND asf.mtu_id = Origem.mtu_id
17 					AND asf.mtd_id = Origem.mtd_id
18 					AND asf.tud_id = Origem.tud_id
19 				)
  1. Item 06
 1 INSERT INTO @EscolasTurmasDisciplinasPeriodos (esc_id, tur_id, tud_id, tur_codigo, cal_id, fav_id, ava_id, tpc_id, tur_tipo, cap_dataFim
 2 			, cal_ano, tpc_nome)
 3 			SELECT
 4 				Tur.esc_id, Tur.tur_id, T.tud_id, tur_codigo, Tur.cal_id, Tur.fav_id, ava_id, T.tpc_id, Tur.tur_tipo, Cap.cap_dataFim
 5 				, Cal.cal_ano, Tpc.tpc_nome
 6 			FROM @filtroTurmaDisciplina T
 7 			INNER JOIN TUR_Turma AS Tur WITH ( NOLOCK )
 8 				ON T.tur_id = Tur.tur_id
 9 			INNER JOIN ACA_CalendarioAnual Cal WITH(NOLOCK)
10 				ON Cal.cal_id = Tur.cal_id
11 			INNER JOIN ACA_CalendarioPeriodo Cap WITH(NOLOCK)
12 				ON Cap.cal_id = Tur.cal_id
13 				AND Cap.tpc_id = T.tpc_id
14 				AND Cap.cap_situacao <> 3
15 			INNER JOIN ACA_TipoPeriodoCalendario Tpc WITH(NOLOCK)
16 				ON Tpc.tpc_id = Cap.tpc_id
17 			INNER JOIN ACA_Avaliacao Ava WITH(NOLOCK)
18 				ON Ava.fav_id = Tur.fav_id
19 				AND Ava.ava_tipo IN (1,5)
20 				AND Ava.tpc_id = T.tpc_id
21 				AND Ava.ava_situacao <> 3
  1. Item 07
 1 INSERT INTO @PendenciaTurmaDisciplina
 2 			(
 3 				tud_id,
 4 				tpc_id,
 5 				esc_id,
 6 				cal_id,
 7 				Pendente,
 8 				PendenteParecer
 9 			)
10 			SELECT
11 				pend.tud_id,
12 				pend.tpc_id,
13 				est.esc_id,
14 				est.cal_id,
15 				CAST(CASE WHEN 
16 						(SUM(CAST(pend.SemNota AS INT)) + 
17 						 SUM(CAST(pend.SemSintese AS INT)) +
18 						 SUM(CAST(pend.SemResultadoFinal AS INT)) +
19 						 --SUM(CAST(pend.SemParecer AS INT)) +
20 						 SUM(CAST(pend.DisciplinaSemAula AS INT))) > 0
21 							THEN 1
22 							ELSE 0 
23 					 END AS BIT) AS Pendente,
24 				CAST(CASE WHEN
25 						SUM(CAST(pend.SemParecer AS INT)) > 0
26 							THEN 1
27 							ELSE 0
28 					END AS BIT) AS PendenteParecer
29 			FROM 
30 				@AlunosDisciplinasPendencias pend
31 				INNER JOIN @EscolasTurmasDisciplinasPeriodos est
32 					ON est.tur_id = pend.tur_id
33 					AND est.tud_id = pend.tud_id
34 					AND est.tpc_id = pend.tpc_id
35 			GROUP BY 
36 				pend.tud_id,
37 				pend.tpc_id,
38 				est.esc_id,
39 				est.cal_id
  1. Item 08
 1 WITH Regencias AS
 2 		(
 3 			SELECT P.tud_id, P.tpc_id, ttrtd.tur_id
 4 			FROM @tbPendencias P
 5 			INNER JOIN dbo.TUR_TurmaDisciplina ttd WITH (NOLOCK)
 6 			ON ttd.tud_id = P.tud_id
 7 			AND ttd.tud_tipo=11--regencia
 8 			INNER JOIN dbo.TUR_TurmaRelTurmaDisciplina ttrtd	 WITH (NOLOCK)
 9 			ON ttrtd.tud_id = ttd.tud_id
10 		)
11 		-- Adicionar os componentes das regências que serão processadas.
12 		INSERT INTO @tbPendencias
13 		(tud_id, tpc_id, processado)
14 		SELECT TudComp.tud_id, R.tpc_id, 3
15 		FROM Regencias R
16 		INNER JOIN TUR_TurmaRelTurmaDisciplina RelTudComp WITH(NOLOCK)
17 			ON RelTudComp.tur_id = R.tur_id
18 		INNER JOIN dbo.TUR_TurmaDisciplina TudComp WITH (NOLOCK)
19 			ON TudComp.tud_id = RelTudComp.tud_id
20 			AND TudComp.tud_tipo = 12 --componente da regencia
21 		EXCEPT
22 		(
23 			SELECT tud_id, tpc_id, processado
24 			FROM @tbPendencias
25 		)
  1. Item 09
 1 WITH DisciplinasNaoLancarNota AS
 2 			(
 3 				SELECT
 4 					Tud.tud_id, Tud.tpc_id
 5 				FROM @AlunosDisciplinasPendencias Tud
 6 				WHERE 
 7 					Tud.tud_naoLancarNota = 1
 8 				GROUP BY Tud.tud_id, Tud.tpc_id
 9 			)
10 			, DisciplinasSemAula AS
11 			(
12 				SELECT 
13 					tud_id, tpc_id
14 				FROM DisciplinasNaoLancarNota Tud
15 				WHERE
16 					NOT EXISTS
17 						(
18 							SELECT TOP 1 1
19 							FROM CLS_TurmaAula Tau WITH(NOLOCK)
20 							WHERE
21 								Tau.tud_id = Tud.tud_id
22 								AND Tau.tpc_id = Tud.tpc_id
23 								AND Tau.tau_situacao <> 3
24 						)
25 			)
26 			UPDATE @AlunosDisciplinasPendencias
27 			SET DisciplinaSemAula = 1
28 			FROM DisciplinasSemAula Tud
29 			INNER JOIN @AlunosDisciplinasPendencias P
30 				ON P.tud_id = Tud.tud_id
31 				AND P.tpc_id = Tud.tpc_id
  1. Item 10
 1 INSERT INTO @filtroTurmaDisciplina
 2 		(tur_id, tud_id, tpc_id, esc_id, uni_id, cal_id)
 3 		-- Select de retorno para o serviço - para limpar o cache.
 4 		OUTPUT inserted.tud_id, inserted.tpc_id, inserted.esc_id, inserted.uni_id, inserted.cal_id, inserted.tur_id
 5 		SELECT 
 6 			Tur.tur_id, Afp.tud_id, Afp.tpc_id, tur.esc_id, tur.uni_id, tur.cal_id
 7 		FROM @tbPendencias AS AFP
 8 		INNER JOIN dbo.TUR_TurmaRelTurmaDisciplina RelTud WITH(NOLOCK)
 9 			ON RelTud.tud_id = Afp.tud_id
10 		INNER JOIN TUR_Turma tur WITH(NOLOCK)
11 			ON RelTud.tur_id = tur.tur_id
12 		INNER JOIN ACA_CalendarioAnual cal WITH(NOLOCK)
13 			ON tur.cal_id = cal.cal_id
14 		WHERE 
15 			processado = 3


  • Ambiente V2
  1. Item 01
 1 DELETE asf
 2 			FROM REL_AlunosSituacaoFechamento asf WITH(NOLOCK)
 3 			INNER JOIN @tbPendencias pen
 4 				ON asf.tud_id = pen.tud_id
 5 				AND asf.tpc_id = pen.tpc_id
 6 			WHERE
 7 				NOT EXISTS
 8 				(
 9 					SELECT TOP 1 1
10 					FROM @AlunoSituacaoFechamentoOrigem Origem
11 					WHERE asf.esc_id = Origem.esc_id 
12 					AND asf.tur_id = Origem.tur_id
13 					AND asf.cal_id = Origem.cal_id
14 					AND asf.tpc_id = Origem.tpc_id
15 					AND asf.alu_id = Origem.alu_id
16 					AND asf.mtu_id = Origem.mtu_id
17 					AND asf.mtd_id = Origem.mtd_id
18 					AND asf.tud_id = Origem.tud_id
19 				)
  1. Item 02
 1 INSERT INTO @AlunosDisciplinasPendencias
 2 			(alu_id, mtu_id, mtd_id, tur_id, tud_id, tud_naoLancarNota, tpc_id, tud_nome, tud_tipo, tur_tipo)
 3 			SELECT
 4 				Mtr.alu_id, Mtr.mtu_id, Mtd.mtd_id, Mtr.tur_id, Mtd.tud_id, ISNULL(tud_naoLancarNota, 0), Tur.tpc_id, tud_nome, tud_tipo, Tur.tur_tipo
 5 			FROM @MatriculaTurma Mtu
 6 			INNER JOIN @EscolasTurmasDisciplinasPeriodos Tur
 7 				ON Tur.tur_id = Mtu.tur_id
 8 			INNER JOIN MTR_MatriculasBoletim Mtr WITH(NOLOCK)
 9 				ON Mtr.alu_id = Mtu.alu_id
10 				AND Mtr.mtu_origemDados = Mtu.mtu_id
11 				AND Mtr.tur_id = Mtu.tur_id
12 				AND Mtr.tpc_id = Tur.tpc_id
13 				AND Mtr.PossuiSaidaPeriodo = 0
14 				AND Mtr.registroExterno = 0
15 			-- Pegar tud_id e mtd_id pelo mtu_id, para buscar as EFs.
16 			INNER JOIN MTR_MatriculaTurmaDisciplina Mtd WITH(NOLOCK)
17 				ON Mtd.alu_id = Mtr.alu_id
18 				AND Mtd.mtu_id = Mtr.mtu_id
19 				AND Mtd.tud_id = Tur.tud_id
20 				AND Mtd.mtd_situacao <> 3
21 			INNER JOIN TUR_TurmaDisciplina Tud WITH(NOLOCK)
22 				ON Tud.tud_id = Mtd.tud_id
23 				AND Tud.tud_situacao <> 3
24 				-- Não trazer 10-Eletiva.
25 				-- Não trazer 11-Regência - só verifica nota nos seus componentes.
26 				-- Não trazer 14-Ed. Física Multiseriada
27 				-- Não trazer 17-Compartilhada.				
28 				-- Não trazer 19-Territorio - só verifica disciplina sem aula na experiência
29 				AND tud.tud_tipo NOT IN (10, 11, 14, 17, 19)
  1. Item 03
 1 MERGE REL_AlunosSituacaoFechamento WITH (HOLDLOCK) AS Destino
 2 			USING @AlunoSituacaoFechamentoOrigem AS Origem
 3 			ON
 4 			(
 5 				Destino.esc_id = Origem.esc_id 
 6 				AND Destino.tur_id = Origem.tur_id
 7 				AND Destino.cal_id = Origem.cal_id
 8 				AND Destino.tpc_id = Origem.tpc_id
 9 				AND Destino.alu_id = Origem.alu_id
10 				AND Destino.mtu_id = Origem.mtu_id
11 				AND Destino.mtd_id = Origem.mtd_id
12 				AND Destino.tud_id = Origem.tud_id
13 			)
14 			WHEN NOT MATCHED THEN
15 				INSERT
16 					([uad_nomeSuperior]
17 				   ,[esc_nome]
18 				   ,[tci_nome]
19 				   ,[crp_descricao]
20 				   ,[tur_codigo]
21 				   ,[cal_ano]
22 				   ,[tpc_nome]
23 				   ,[pes_nome]
24 				   ,[tud_nome]
25 				   ,[uad_idSuperior]
26 				   ,[esc_id]
27 				   ,[tci_id]
28 				   ,[cur_id]
29 				   ,[crr_id]
30 				   ,[crp_id]
31 				   ,[tur_id]
32 				   ,[cal_id]
33 				   ,[tpc_id]
34 				   ,[alu_id]
35 				   ,[mtu_id]
36 				   ,[mtd_id]
37 				   ,[tud_id]
38 				   ,[tud_tipo]
39 				   ,[SemNota]
40 				   ,[SemSintese]
41 				   ,[SemResultadoFinal]
42 				   ,[SemParecer]
43 				   ,[DisciplinaSemAula]
44 				   ,[DataRegistro])
45 				VALUES
46 				(Origem.DRE
47 				   ,Origem.Escola
48 				   ,Origem.Ciclo
49 				   ,Origem.Serie
50 				   ,Origem.Turma
51 				   ,Origem.AnoLetivo
52 				   ,Origem.Bimestre
53 				   ,Origem.Aluno
54 				   ,Origem.Disciplina
55 				   ,Origem.uad_idSuperior
56 				   ,Origem.esc_id
57 				   ,Origem.tci_id
58 				   ,Origem.cur_id
59 				   ,Origem.crr_id
60 				   ,Origem.crp_id
61 				   ,Origem.tur_id
62 				   ,Origem.cal_id
63 				   ,Origem.tpc_id
64 				   ,Origem.alu_id
65 				   ,Origem.mtu_id
66 				   ,Origem.mtd_id
67 				   ,Origem.tud_id
68 				   ,Origem.tud_tipo
69 				   ,Origem.SemNota
70 				   ,Origem.SemSintese
71 				   ,Origem.SemResultadoFinal
72 				   ,Origem.SemParecer
73 				   ,Origem.DisciplinaSemAula
74 				   ,Origem.DataRegistro)
75 			WHEN MATCHED THEN
76 				UPDATE SET 
77 					SemNota = Origem.SemNota,
78 					SemSintese = Origem.SemSintese,
79 					SemResultadoFinal = Origem.SemResultadoFinal,
80 					SemParecer = Origem.SemParecer,
81 					DisciplinaSemAula = Origem.DisciplinaSemAula,
82 					DataRegistro = Origem.DataRegistro;
  1. Item 04
 1 INSERT INTO @EscolasTurmasDisciplinasPeriodos (esc_id, tur_id, tud_id, tur_codigo, cal_id, fav_id, ava_id, tpc_id, tur_tipo, cap_dataFim
 2 			, cal_ano, tpc_nome)
 3 			SELECT
 4 				Tur.esc_id, Tur.tur_id, T.tud_id, tur_codigo, Tur.cal_id, Tur.fav_id, ava_id, T.tpc_id, Tur.tur_tipo, Cap.cap_dataFim
 5 				, Cal.cal_ano, Tpc.tpc_nome
 6 			FROM @filtroTurmaDisciplina T
 7 			INNER JOIN TUR_Turma AS Tur WITH ( NOLOCK )
 8 				ON T.tur_id = Tur.tur_id
 9 			INNER JOIN ACA_CalendarioAnual Cal WITH(NOLOCK)
10 				ON Cal.cal_id = Tur.cal_id
11 			INNER JOIN ACA_CalendarioPeriodo Cap WITH(NOLOCK)
12 				ON Cap.cal_id = Tur.cal_id
13 				AND Cap.tpc_id = T.tpc_id
14 				AND Cap.cap_situacao <> 3
15 			INNER JOIN ACA_TipoPeriodoCalendario Tpc WITH(NOLOCK)
16 				ON Tpc.tpc_id = Cap.tpc_id
17 			INNER JOIN ACA_Avaliacao Ava WITH(NOLOCK)
18 				ON Ava.fav_id = Tur.fav_id
19 				AND Ava.ava_tipo IN (1,5)
20 				AND Ava.tpc_id = T.tpc_id
21 				AND Ava.ava_situacao <> 3
  1. Item 05
 1 INSERT INTO @PendenciaTurmaDisciplina
 2 			(
 3 				tud_id,
 4 				tpc_id,
 5 				esc_id,
 6 				cal_id,
 7 				Pendente,
 8 				PendenteParecer
 9 			)
10 			SELECT
11 				pend.tud_id,
12 				pend.tpc_id,
13 				est.esc_id,
14 				est.cal_id,
15 				CAST(CASE WHEN 
16 						(SUM(CAST(pend.SemNota AS INT)) + 
17 						 SUM(CAST(pend.SemSintese AS INT)) +
18 						 SUM(CAST(pend.SemResultadoFinal AS INT)) +
19 						 --SUM(CAST(pend.SemParecer AS INT)) +
20 						 SUM(CAST(pend.DisciplinaSemAula AS INT))) > 0
21 							THEN 1
22 							ELSE 0 
23 					 END AS BIT) AS Pendente,
24 				CAST(CASE WHEN
25 						SUM(CAST(pend.SemParecer AS INT)) > 0
26 							THEN 1
27 							ELSE 0
28 					END AS BIT) AS PendenteParecer
29 			FROM 
30 				@AlunosDisciplinasPendencias pend
31 				INNER JOIN @EscolasTurmasDisciplinasPeriodos est
32 					ON est.tur_id = pend.tur_id
33 					AND est.tud_id = pend.tud_id
34 					AND est.tpc_id = pend.tpc_id
35 			GROUP BY 
36 				pend.tud_id,
37 				pend.tpc_id,
38 				est.esc_id,
39 				est.cal_id
  1. Item 06
 1 WITH Regencias AS
 2 		(
 3 			SELECT P.tud_id, P.tpc_id, ttrtd.tur_id
 4 			FROM @tbPendencias P
 5 			INNER JOIN dbo.TUR_TurmaDisciplina ttd WITH (NOLOCK)
 6 			ON ttd.tud_id = P.tud_id
 7 			AND ttd.tud_tipo=11--regencia
 8 			INNER JOIN dbo.TUR_TurmaRelTurmaDisciplina ttrtd	 WITH (NOLOCK)
 9 			ON ttrtd.tud_id = ttd.tud_id
10 		)
11 		-- Adicionar os componentes das regências que serão processadas.
12 		INSERT INTO @tbPendencias
13 		(tud_id, tpc_id, processado)
14 		SELECT TudComp.tud_id, R.tpc_id, 3
15 		FROM Regencias R
16 		INNER JOIN TUR_TurmaRelTurmaDisciplina RelTudComp WITH(NOLOCK)
17 			ON RelTudComp.tur_id = R.tur_id
18 		INNER JOIN dbo.TUR_TurmaDisciplina TudComp WITH (NOLOCK)
19 			ON TudComp.tud_id = RelTudComp.tud_id
20 			AND TudComp.tud_tipo = 12 --componente da regencia
21 		EXCEPT
22 		(
23 			SELECT tud_id, tpc_id, processado
24 			FROM @tbPendencias
25 		)
  1. Item 07
 1 WITH DisciplinasNaoLancarNota AS
 2 			(
 3 				SELECT
 4 					Tud.tud_id
 5 					, Tud.tpc_id
 6 				FROM 
 7 					@AlunosDisciplinasPendencias Tud
 8 				WHERE 
 9 					Tud.tud_naoLancarNota = 1
10 					-- Tudo que não lança nota exceto Experiência (Território do Saber)
11 					AND tud.tud_tipo <> 18
12 				GROUP BY
13 					Tud.tud_id
14 					, Tud.tpc_id
15 			)
16 			, DisciplinasSemAula AS
17 			(
18 				SELECT 
19 					Tud.tud_id
20 					, Tud.tpc_id
21 				FROM
22 					DisciplinasNaoLancarNota Tud
23 				WHERE
24 					NOT EXISTS
25 						(
26 							SELECT TOP 1 1
27 							FROM CLS_TurmaAula Tau WITH(NOLOCK)
28 							WHERE
29 								Tau.tud_id = Tud.tud_id
30 								AND Tau.tpc_id = Tud.tpc_id
31 								AND Tau.tau_situacao <> 3
32 						)
33 			)
34 			UPDATE @AlunosDisciplinasPendencias
35 			SET DisciplinaSemAula = 1
36 			FROM DisciplinasSemAula Tud
37 			INNER JOIN @AlunosDisciplinasPendencias P
38 				ON P.tud_id = Tud.tud_id
39 				AND P.tpc_id = Tud.tpc_id
  1. Item 08
1 UPDATE tsf
2 			SET Pendente = CAST(0 AS BIT),
3 				PendenteParecer = CAST(0 AS BIT),
4 				DataProcessamento = @data
5 			FROM
6 				REL_TurmaDisciplinaSituacaoFechamento tsf WITH(NOLOCK)
7 				INNER JOIN @filtroTurmaDisciplina T
8 					ON T.tud_id = tsf.tud_id
9 					AND T.tpc_id = tsf.tpc_id
  1. Item 09
1 SELECT 
2 			@quantidaMaxProcessamento = ISNULL(CAST(pac.pac_valor AS INT), 1000)
3 		FROM
4 			ACA_ParametroAcademico pac WITH(NOLOCK)
5 		WHERE
6 			pac.pac_chave = 'QUANTIDADE_MAXIMA_BUSCA_FILA_FECHAMENTO'
7 			AND pac.pac_situacao <> 3
  1. Item 10
 1 INSERT INTO @MatriculaTurma (alu_id, mtu_id, tur_id)
 2 			SELECT  
 3 				Mtu.alu_id, MAX(Mtu.mtu_id) AS mtu_id, Tur.tur_id
 4 			FROM @EscolasTurmasDisciplinasPeriodos Tur
 5 			INNER JOIN MTR_MatriculaTurma Mtu WITH(NOLOCK)
 6 				ON Mtu.tur_id = Tur.tur_id
 7 				AND Mtu.mtu_situacao <> 3
 8 			INNER JOIN ACA_Aluno alu WITH(NOLOCK)
 9 				ON Mtu.alu_id = alu.alu_id
10 				AND alu.alu_situacao <> 3
11 			WHERE Tur.tur_tipo = 1 --Apenas turmas normais.
12 			GROUP BY Mtu.alu_id, Tur.tur_id

Resultado dos testes

Comparação dos ambientes com o cenário V1

Nesta seção serão apresentados os resultados obtidos da execução dos testes.

  • Processador e disco
Contador: Percentagem de tempo ocioso.
Descrição: Este contador fornece quanto tempo o disco permaneceu em estado de repouso, ou seja, todos os pedidos do sistema operacional para o disco ter sido concluída e há zero de pedidos pendentes. Este contador varia de 100 (ou seja, sempre ocioso) para 0 (ou seja, sempre ocupado).
Limite recomendado: Abaixo de 75 %.
Análise: Encontra-se ocioso grande parte do tempo.
SPG V1 TempoOcioso 2016-09-16.png
Contador: Percentagem de espaço livre.
Descrição: Mostra a porcentagem do espaço total utilizável no disco lógico selecionado.
Limite recomendado: Acima de 25%.
Análise: Aplicação encontra-se dentro do recomendado.
GGP V1 EspacoLivre 2016-09-16.png
Tempo total do processador.
Descrição: Mede a utilização da CPU de cada processador.
Limite recomendado: Não exceder 80% por mais de 10 minutos ao longo do período de teste.
Análise: A aplicação encontra-se dentro do recomendado.
SGP V1 TotalProcessador 2016-09-16.png
Contador: Mudança de contexto.
Descrição: A mudança de contexto ocorre quando o kernel muda o processador de um segmento para outro, por exemplo, quando um segmento com uma prioridade maior do que o segmento em execução torna-se pronto.
Limite recomendado: 0-10.000 .
Análise: A taxa de mudanças de contexto de 500 a 2.000 por segundo pode indicar um problema com um adaptador de rede ou um driver de dispositivo ou que você está usando um aplicativo baseado em servidor ineficiente que gera muitos segmentos.
SGP V1 MudancaContexto 2016-09-16.png


  • Memória
Contador: Páginas/segundo.
Descrição: Mede o número de páginas por segundo que são paginadas fora da memória RAM para a memória virtual.
Limite recomendado: Se o número for alto indica falhas graves. O limite normalmente é de 20 páginas/s
Análise: Os valores podem indicar insuficiência de memória RAM, despesas gerais e degradação de desempenho. Também pode ser causada por leitura sequencial de um ficheiro mapeado na memória.
SGP V1 PaginaS 2016-09-16.png
Contador: % Memória virtual comprometida.
Descrição: Indica a percentagem da memória comprometida utilizada dentro do limite dado pela soma da memória RAM e Page File.
Limite recomendado: Abaixo de 75% e que não tenha grande variação no indicador.
Análise: A aplicação utiliza um grande espaço no banco de dados, porém a utilização não possui grande variação.
SGP V1 MemoriaComprometida 2016-09-16.png


Contador: Memória disponível em MBytes.
Descrição: Indica quantidade de memória disponível para alocação em MBytes.
Limite recomendado: Se o valor for inferior a 20/25 por cento de RAM instalada é uma indicação de memória insuficiente. Menos de 100 MB é uma indicação de que o sistema é muito carente de memória e paginação.
Análise: Necessário um servidor com grande quantidade de memória para a aplicação.
SGP V1 MemoriaDisponivel 2016-09-16.png


  • Network
Contador: Kbytes totais pela interface de rede.
Descrição: Indica quantos Kbytes foram enviados e recebidos a cada segundo pela interface de rede.
Limite recomendado: Menor que 5 Mbytes para uma rede de 100Mbps, menor que 50 Mbytes para uma rede de 1000 Mbps. (Quanto menor melhor).
Análise: Quantidade de dados trafegados na rede é muito variável.
SGP V1 InterfaceRede 2016-09-16.png
Contador: Falhas de conexão (TCP)
Descrição: Este é o número bruto de conexões TCP que falharam desde que o servidor foi iniciado. Uma falha normalmente indica uma perda de dados em lugar no processo. A perda pode ocorrer em muitos locais. Esta poderia ser uma indicação de um outro dispositivo que está sendo para baixo, ou problemas com a configuração do lado do cliente do software.
Limite recomendado: Quanto menor melhor.
SGP V1 ConexaoFalha 2016-09-16.png

Comparação dos ambientes com o cenário V3

Nesta seção serão apresentados os resultados obtidos da execução dos testes.

  • Processador
Contador: Percentagem de tempo ocioso.
Descrição: Este contador fornece quanto tempo o disco permaneceu em estado de repouso, ou seja, todos os pedidos do sistema operacional para o disco ter sido concluída e há zero de pedidos pendentes. Este contador varia de 100 (ou seja, sempre ocioso) para 0 (ou seja, sempre ocupado).
Limite recomendado: Abaixo de 75 %.
Análise: Houve uma sobrecarga em um dos ambientes web.
SGP V3 TempoOcioso 2016-09-16.png
Contador: Percentagem de espaço livre.
Descrição: Mostra a porcentagem do espaço total utilizável no disco lógico selecionado.
Limite recomendado: Acima de 25%.
Análise: Houve uma sobrecarga em um dos ambientes web.
ArquivoSGP V3 EspacoLivre 16-09-16.png
Tempo total do processador.
Descrição: Mede a utilização da CPU de cada processador.
Limite recomendado: Não exceder 80% por mais de 10 minutos ao longo do período de teste.
Análise: Houve uma sobrecarga em um dos ambientes web.
AGP V3 TempoTotalProcessador 2016-09-16.png
Contador: Mudança de contexto.
Descrição: A mudança de contexto ocorre quando o kernel muda o processador de um segmento para outro, por exemplo, quando um segmento com uma prioridade maior do que o segmento em execução torna-se pronto.
Limite recomendado: 0-10.000 .
Análise: A taxa de mudanças de contexto de 500 a 2.000 por segundo pode indicar um problema com um adaptador de rede ou um driver de dispositivo ou que você está usando um aplicativo baseado em servidor ineficiente que gera muitos segmentos.
SGP V3 MudancaContexto 2016-09-16.png


  • Memória
Contador: Páginas/segundo.
Descrição: Mede o número de páginas por segundo que são paginadas fora da memória RAM para a memória virtual.
Limite recomendado: Se o número for alto indica falhas graves. O limite normalmente é de 20 páginas/s
Análise: Os valores podem indicar insuficiência de memória RAM, despesas gerais e degradação de desempenho. Também pode ser causada por leitura sequencial de um ficheiro mapeado na memória.
SGP V3 PaginaS 2016-09-16.png
Contador: % Memória virtual comprometida.
Descrição: Indica a percentagem da memória comprometida utilizada dentro do limite dado pela soma da memória RAM e Page File.
Limite recomendado: Abaixo de 75% e que não tenha grande variação no indicador.
Análise: A aplicação utiliza um grande espaço no banco de dados, porém a utilização não possui grande variação.
SGP V3 MemoriaComprometida 2016-09-16.png


Contador: Memória disponível em MBytes.
Descrição: Indica quantidade de memória disponível para alocação em MBytes.
Limite recomendado: Se o valor for inferior a 20/25 por cento de RAM instalada é uma indicação de memória insuficiente. Menos de 100 MB é uma indicação de que o sistema é muito carente de memória e paginação.
Análise: Necessário um servidor com grande quantidade de memória para a aplicação.
SGP V3 MemoriaDisponível 2016-09-16.png