Identificando Lentidão sistêmica no Agrotitan
Processos para conferir uma lentidão sistêmica reportada pelo cliente:
O primeiro passo é realizar um contato para entender a situação:
Quando começou acontecer?
Foi realizada alguma alteração (Atualização, Alguma mudança relevante que impacte o servidor)?
É uma lentidão geral ou em alguma rotina específica do sistema?
Essa pergunta é bem importante, pois poderá evitar toda a validação sub-sequente.
O tópico 2 é exclusivo para cliente que receberam o atualizador do Lote 731 com a versão inferir a 4.0.2208.1012
Já é de conhecimento que no último att enviado tanto em Oracle para Firebird, faltou a criação de um índice na tabela MOVITEMAGRO Então se faz necessário acessar esta tabela e conferir se todos os índices listados abaixo estão criados:
INDEX MOVITEMAGRO01
INDEX MOVITEMAGRO02
INDEX MOVITEMAGRO03
INDEX MOVITEMAGRO04
INDEX MOVITEMAGROPERIODO
Tá, mas como vou saber isso? É simples:
Em Oracle:
No SQLDeveloper selecione a tabela MOVITEMAGRO, depois clique sob a guia ÍndicesSe faltar um dos índices destacados, será necessário criar o(s) mesmo(s) através do(s) comando(s), mostrados na sequência:
Em Firebird:
No IBExpert selecione a tabela MOVITEMAGRO, depois clique sob a guia ÍndicesSe faltar um dos índices destacados, será necessário criar o(s) mesmo(s) através do(s) comando(s), mostrados na sequência:
O terceiro passo se caracteriza como uma validação básica em algumas aplicações, sendo elas:
Socket Server
Por padrão o Socket Server em Servidores de Cliente deve estar configurado para 1000 Thread CacheNível de Detalhes das aplicações (Debug):
As aplicações Viasoft que executam a função de Server possuem um Nível de Detalhes para geração dos log’s:E se estiver com o nível 9 em um servidor de produção dos nossos clientes, pode ocasionar lentidão devido ao grande número de logs que precisa gerar a cada iteração execução de um processo por parte do usuário.
OBSERVAÇÃO: A maioria das aplicações, com a função de Server tem essa funcionalidade Então uma boa prática e sempre conferir essas informações nas aplicações.
Algo um pouco “besta”, mas que não podemos descartar, é se o cliente atualizou corretamente o Banco de Dados:
Conferir o desempenho da Infra:
Acessar o Gerenciado de Tarefas e verificar como está o desempenho do Servidor.
Se o cliente utiliza um ambiente externo a exemplo, somente o usuário X relata uma lentidão, neste caso é interessante efetuar o teste de internet realizando um ping com o endereço do servidor. Neste caso acesse o CMD da máquina Client e execute o comando:
ping endereco-de-ip -t
O quinto e último passo terá um ponto específico para Firebird e outro para Oracle.
Oracle
No SQLDeveloper é possível identificar se tem algum comando que está travando o banco de dados e/ou com um tempo de execução o qual está prejudicando outros processos. Para isso acesse o menu Ferramentas » Monitorar Sessões, na imagem a seguir é mostrado um exemplo de como esse processo funciona, damos ênfase a coluna Seconds in Wait (Segundos em espera)Clicando sobre a coluna podemos realizar a ordenação pela consulta com maior tempo de espera e no grid Código SQL Ativo é possível identificar a sintax do comando sendo executado no momento.
OBSERVAÇÃO: Se essa situação supracitada ocorrer solicite apoio do Programador ou DBA responsável por prestar apoio. Importante no momento da análise essa tela seja utilizada apenas para consulta.
Firebird
O firebird possuí 3 tipos de instalação, as quais podem ser conferidas como no exemplo a seguir:Sendo elas:
Firebird SuperServer
"C:\Program Files\Firebird\Firebird_2_5\bin\fbserver.exe" -s DefaultInstance
Essa opção nunca deve ser utilizada em um ambiente de produção, se por acaso for identificada é recomendado que o Firebird seja reinstalado e configurado uma das opções abaixo.
Firebird Classic
"C:\Program Files\Firebird\Firebird_2_5\bin\fb_inet_server.exe" -s DefaultInstance
Opção mais recomendada para utilização no ambiente de produção dos clientes.
Firebird SuperClassic
"C:\Program Files\Firebird\Firebird_2_5\bin\fb_inet_server.exe" -s DefaultInstance -m
Exemplos:
Através da ação 21 do chamado de Suporte 493626 foi registrado em comentário interno uma análise seguindo os passos anteriores Então essa situação pode ser consultada como exemplo em futuras demandas.