Melhores práticas para processos de fluxo de trabalho de fundo

Este tópico contém as melhores práticas para criar processos e gerir de fluxo de trabalho de fundo.

Evite ciclos infinitos

É possível criar uma lógica num fluxo de trabalho de fundo que inicie um círculo infinito, que consuma recursos de servidor e afete o desempenho. A situação típica que um círculo infinito é poderá ocorrer se tiver um fluxo de trabalho de fundo configurado para iniciar quando uma coluna é atualizada e, em seguida, atualiza essa coluna na lógica do fluxo de trabalho. A ação de atualização provoca o mesmo fluxo de trabalho de fundo que atualiza a linha e desencadeia o fluxo de trabalho de fundo uma e outra vez.

Os fluxos de trabalho que cria incluem lógica para detetar e parar ciclos infinitos. Se um processo de fluxo de trabalho de fundo for executado mais de um determinado número de vezes numa linha específica num curto espaço de tempo, o processo falha com o erro seguinte: Esta tarefa de fluxo de trabalho foi cancelada porque o fluxo de trabalho que a iniciou incluía um ciclo infinito. Corrija a lógica do fluxo de trabalho e tente novamente. O limite de vezes é 16.

Use modelos de fluxo de trabalho de fundo

Se tiver que funciona semelhantes e a antecipa a criação das mais que sigam o mesmo padrão, guarde o fluxo de trabalho como um modelo de fluxo de trabalho de fundo. Deste modo, na próxima vez que é necessário criar um novo trabalho semelhantes, use o modelo para criar o fluxo de fundo e evite introduzir todas as condições e ações a partir do zero.

Na caixa de diálogo Criar processo, escolha Novo processo de um modelo existente (selecione na lista).

Utilizar Fluxos de Trabalho Subordinados

Se aplicar a mesma lógica em fluxos de trabalho diferentes ou de ramos condicionais, defina a lógica num fluxo de trabalho subordinado pelo que não tenha desta manualmente replicar lógica num fluxo de trabalho de fundo ou ramo condicional. Isto ajuda a tornar os fluxos de trabalho manter. Em vez de examinar vários fluxos de trabalho que possam aplicar a mesma lógica, pode apenas atualizar um fluxo de trabalho.

Eliminar automaticamente as tarefas de fluxo de trabalho de fundo concluídas

Para fluxos de trabalho em segundo plano (assíncronos), recomendamos que selecione a opção Eliminar automaticamente as tarefas de fluxo de trabalho concluídas (para poupar espaço em disco) na definição do fluxo de trabalho de fundo. Selecionar esta caixa de verificação permite que o sistema elimine registos de fluxos de fundo de execuções com êxito para poupar espaço. Tenha em atenção que esses registos de execuções de fluxos de trabalho de fundo com falhas serão sempre guardados para resoluções de problemas.

Retenção de tarefas de fluxo de trabalho.

Limitar o número de fluxos de trabalho que atualizam a mesma tabela

Executar mais de um fluxo de trabalho de fundo que atualiza a mesma tabela pode causar problemas de bloqueio de recursos. Imagine vários fluxos de trabalho de execução em que todas as atualizações de oportunidade acionam uma atualização para a conta associada. Várias instâncias desses fluxos de trabalho em execução e tentar atualizar a mesma linha de conta ao mesmo tempo pode resultar em problemas de bloqueio de recursos. Ocorrem falhas de fluxo de trabalho de fundo e uma mensagem de erro, como Tempo limite do SQL: não é possível obter bloqueio de recurso nome do recurso, é registada.

Utilize notas para monitorizar alterações

Quando edita fluxos de trabalho tem de utilizar o separador Notas e introduzir o que efetuou e porquê. Tal permite que outras pessoas compreendam as alterações efetuadas.

Passos seguintes

Configurar processos de fluxo de trabalho de fundo
Monitorizar e gerir processos de fluxo de trabalho de fundo