Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Dentro da nossa experiência de atendimento à diversos clientes, identificamos alguns cenários como os mais comuns quando relacionados à lentidão do fluig. Abaixo, temos a descrição de cada um deles, bem como as medidas normalmente utilizadas para identificar os fatores que levam à percepção de lentidão.

Na página inicial

Começamos com a avaliação dos tempos de execução dos widgets e, caso existam, das páginas desenvolvidas sobre a plataforma. Essa análise é realizada principalmente através das ferramentas de análise disponibilizadas pelos navegadores, como Chrome e Firefox. Nesta avaliação, buscamos identificar qual, ou quais, recursos estão levando um tempo anormal para responder ou carregar.

Na publicação ou visualização de documentos

Quando a demora é percebida na publicação de documentos, começamos verificando se há execução de eventos personalizados, através do log do servidor. Caso a percepção seja na visualização, também temos a hipótese de eventos personalizados demorando muito para executar. Caso a lentidão seja no visualizador interno, deve-se verificar o dimensionamento do mesmo.

Na tela de inicialização de processos

Normalmente identificamos que a percepção de lentidão nesta tela ocorre devido aos mecanismos de atribuição relacionados às atividades iniciais dos processos. Como o fluig precisa resolver cada um dos mecanismos para então exibir a lista dos processos aos quais o usuário possui permissão para iniciar, pode haver lentidão neste ponto.

Na abertura da tela de movimentação de processo

Nesta tela, quando o processo está sendo aberto para que usuário possa preencher o formulário, anexar arquivos, etc., normalmente iniciamos a avaliação pelo tempo de execução das requisições através do console do navegador para identificar quais recursos estão demorando para responder. Assim, podemos identificar se o motivo da percepção de lentidão são recursos externos, como bibliotecas JavaScript utilizadas no formulário, ou requisições internas do próprio fluig.

Caso identificado que são requisições internas, passamos a avaliar o log do servidor em busca da execução de desenvolvimentos como eventos de processos do tipo before e de eventos de formulário (displayFields, enableFields, etc.), consultas à dataset e/ou consultas a serviços externos. Caso a lentidão seja causada pela execução de eventos, sugerimos a revisão dos mesmos para reduzir ao máximo o processamento necessário para execução. Caso a lentidão seja em consultas a datasets, deve-se avaliar se o dataset em questão foi desenvolvido utilizando as boas práticas e também recursos como a sincronização de datasets.

Na movimentação de processo

Quando temos situações onde o envio da solicitação está levando muito tempo, procedemos com uma análise bastante parecida com a analise descrita no item acima, porém agora devemos avaliar eventos de processos do tipo after e eventos de validação de formulários (validateForm, etc.).

...

Basta procurar por "[com.totvs.technology.foundation.common.JSChronos]" no log do servidor. Todos os pontos de customização são registrados com a informação do tempo de execução, conforme exemplo abaixo.:

Bloco de código
languagetext
titleExemplo de execução de dataset
11:02:22,499 INFO [com.totvs.technology.foundation.common.JSChronos] (http-pool-threads - 77) DatasetFactory.getDataset.dsCargosSalariosAtv executou por 1 segundo

...