Causadores de lentidão

Filtros

Quando a lentidão é gerada ao tentar filtrar por um campo, por exemplo na rotina Contas a Pagar, ao tentar filtrar um valor que corresponde a um título pago que não possui índice, neste caso a lentidão é gerada devido à ausência de índice. É importante a analise constante do banco de dados para definir os indices especificos necessários para o ambiente.

Rede

A latência de rede é um dos pontos que pode causar lentidão no Protheus porque todos os dados trafegados entre o Smartclient e Server serão afetados. Para verificar se a latência de rede está impactando na performance do Protheus, execute o programa U_NETTEST no período de 1 hora e analise os resultados que estão acima de 100ms. Acima de 100 ms de resposta a lentidão já é notada pelo usuário. Analise de rede tem que ser parte do dia a dia da empresa.

Consumo de memória:

Caso identifique que o consumo de memória dos serviço do Protheus esteja elevado, sugerimos a análise de dois pontos:

1. Quantidade de usuário conectados no Slave.

Para este caso deverão ser criados novos Slaves de acordo com o recurso computacional disponível porque assim o volume de conexão entres os Slaves será balanceado e consequentemente o consumo de memória será diminuído neles.

2. Consumo por Programa.

Quando for alto consumo por programa, deverá identificar e isolar o programa com alto consumo de memória, em seguida gerar os logs e encaminhar para equipe específica analisar.

Fragmentação de Tabelas, SQL Server

Verifique se há tabelas e index do banco de dados que estão desfragmentadas. A fragmentação das tabelas diminui a performance do banco de dados e da aplicação.

Um dos grandes problemas que temos com relação a performance é devido a fragmentação de nossos índices. Com o grande número de inserções, alterações e exclusões que ocorrem em nossas tabelas, os índices se fragmentam cada vez mais, ocasionando uma lentidão na manipulação dos dados desses índices.

Verifique se há índices pertencentes às tabelas da aplicação que estão fragmentados, pois quando estes índices estão fragmentados, diminui a performance da aplicação e do banco de dados. Neste caso realize o Rebuild dos índices das tabelas da aplicação.