Para melhorar o desempenho do fluxo de trabalho, um administrador pode configurar
o sistema para o processamento assíncrono de regras (plano de fundo) e o autor do
fluxo de trabalho pode identificar os conjuntos de regras específicos que requerem esse
processamento.
Embora o software de Regras possa executar a maioria dos conjuntos de regras em microssegundos ou
menos, alguns conjuntos de regras, como consultas ao banco de dados, requerem um tempo de
processamento mais longo. Enquanto um encadeamento do servidor do sistema de fluxo de trabalho que manipula a solicitação do cliente espera uma resposta do software Regras, ele não está
disponível para processar outras solicitações de entrada.
O processamento assíncrono cria uma carga extra no sistema de fluxo de trabalho
requerendo o planejamento de execução de regras em segundo plano, enfileiramento e processamento
extras. Para um conjunto de regras especificado para um processamento assíncrono,
o sistema de fluxo de trabalho enfileira a execução de regras na fila ISI para a
execução em segundo plano. Um conjunto de regras não especificado para o processamento assíncrono
será executado por meio do caminho de execução normal. Portanto, para evitar a degradação geral do
sistema, somente os conjuntos de regras que requerem um longo tempo de processo deve ser
categorizado para o processamento assíncrono.
Importante: Usar Regras Assíncronas com a opção OnSave
causa um comportamento inesperado no aplicativo, pois uma etapa que foi
bloqueada anteriormente será automaticamente desbloqueada depois de a
regra ser executada. Quando uma regra
é executada assincronamente, o item de trabalho é removido de sua fila,
colocado na fila isi para execução pelo processo vwisi e, em seguida,
retornado para a fila original. Durante este procedimento, não é
possível manter o bloquei do objeto de trabalho, assim, depois que a
regra assíncrona é executada, um item de trabalho que foi
anteriormente bloqueado não estará mais bloqueado pelo usuário. Esse
problema não se aplica a regras executadas assincronamente Antes da
Execução ou Após a Conclusão da etapa.
Para casos em que o encadeamento isi não pode esvaziar sua fila
de maneira rápida o suficiente, é possível usar o procedimento a
seguir para aumentar o número de encadeamentos vwisi para atender
à fila InstructionSheetInterpreter.
- No console de administração, aumente o número máximo de encadeamentos primários para o subsistema do fluxo de trabalho.
- Na área de janela de navegação do domínio, selecione o domínio.
- Na guia Subsistema do Fluxo de Trabalho, aumente
o valor Máximo de encadeamentos primários.
Se você tiver conjuntos de regras que não podem ser executados pelo mecanismo de regras
em menos de um segundo, será possível concluir as seguintes etapas para ativar o
processamento de regras assíncronas:
- Acesse a configuração para servidores remotos no console de administração:
- Na área de janela de navegação do domínio, selecione o armazenamento de objeto.
- Na área de janela de navegação de armazenamento de objeto, clique em .
- Na área de janela de detalhes, clique na guia Servidores Remotos.
- Na guia Servidores Remotos, selecione a caixa de seleção Permitir Regras
Assíncronas para tornar a opção Regras Assíncronas disponível no Designer
de Processo.
- Trabalhe com o autor do fluxo de trabalho para identificar os conjuntos de regras específicos que devem usar
o processamento assíncrono.