Caixa de Diálogo Configurações Avançadas de Persistência

Use a caixa de diálogo Configurações de Persistência Avançadas para configurar os recursos de persistência avançados de um serviço de fluxo de trabalho que utiliza o Repositório de Instâncias de Fluxo de Trabalho SQL. A seção a seguir descreve os campos da interface de usuário desta caixa de diálogo.

Campo

Descrição

Codificar instâncias (GZip)

Especifica se as informações de estado da instância devem ser compactadas usando o algoritmo GZip antes de serem salvas no repositório de persistência.

Manter instâncias após conclusão.

Especifica se as informações de estado da instância devem ser mantidas no banco de dados de persistência após a conclusão da instância.

Aviso

Manter as instâncias após a conclusão fará com que o banco de dados de persistência cresça rapidamente, e isso afetará o desempenho do banco de dados. Você deve configurar uma diretiva de limpeza do banco de dados para excluir esses registros periodicamente a fim de garantir que o desempenho do banco de dados esteja em um nível que satisfaça às suas necessidades de desempenho.

Ação em exceção de bloqueio de instância.

Especifica a ação que o host do serviço deve executar quando receber InstanceLockedException após o host tentar bloquear uma instância, pois ela está atualmente bloqueada por outro host. As opções permitidas para esse campo são: Nenhum, Repetir Básico e Repetir Agressivo. O valor padrão é Nenhum. A lista a seguir fornece as descrições dessas três opções.

  • Nenhum. O host do serviço não tenta bloquear a instância e transfere InstanceLockedException para o chamador.

  • Repetir Básico. O host do serviço tenta novamente bloquear a instância com um aumento exponencial de atraso e transfere InstanceLockedException para o chamador no final da sequência.

  • Repetir Agressivo. O host do serviço tenta novamente bloquear a instância com um intervalo de repetição linear e transfere a exceção para o chamador no final da sequência.

Período de renovação de bloqueio do host (em segundos).

Especifica o intervalo no qual um host deve renovar o bloqueio de uma instância antes de o bloqueio expirar. Se o host não renovar o bloqueio no período especificado, a instância será desbloqueada e outro host poderá obter o bloqueio dela.

Período de detecção de instâncias executáveis (em segundos)

Especifica o período após o qual o Repositório de Instâncias de Fluxo de Trabalho SQL executará uma tarefa de detecção a fim de detectar todas as instâncias de fluxo de trabalho que podem ser executadas ou ativadas presentes no banco de dados de persistência após o ciclo de detecção anterior. O Repositório de Instâncias de Fluxo de Trabalho SQL executa uma tarefa interna que periodicamente é ativada e detecta as instâncias que podem ser executadas ou ativadas presentes no banco de dados de persistência.

Definir um intervalo mais curto para essa propriedade reduz o tempo entre a expiração de um timer associado a uma instância de fluxo de trabalho e a sinalização do evento e o carregamento subsequente da instância. Entretanto, isso também aumenta a carga de processamento em um host e pode não ser desejável em cenários nos quais timers duráveis e/ou falhas de host sejam raras. O tipo da propriedade é TimeSpan e o valor da propriedade segue o formato: hh:mm:ss. O valor mínimo dessa propriedade é 00:00:01. O valor padrão é 00:00:05.

Configurações Relacionadas

Os campos na caixa de diálogo Configurações de Persistência Avançadas correspondem aos seguintes elementos e atributos do arquivo de configuração.

<behaviors>
    <serviceBehaviors>
        <behavior name="TutorialServiceConfiguration">
            <sqlWorkflowInstanceStore connectionStringName="ApplicationServerWorkflowInstanceStoreConnectionString" hostLockRenewalPeriod="00:00:30" runnableInstancesDetectionPeriod="00:00:05" instanceEncodingOption="None" instanceCompletionAction="DeleteAll" instanceLockedExceptionAction="NoRetry" />
        </behavior>
   </serviceBehaviors>
</behaviors>

A lista a seguir contém atributos ou elementos XML que são associados a elementos da interface do usuário dessa caixa de diálogo.

Elemento da Interface do Usuário Atributo ou Elemento XML Comentários

Instância de codificação (GZip)

Atributo instanceEncodingOption no elemento sqlWorkflowInstanceStore

Quando a opção Codificar instâncias (GZip) estiver marcada e as configurações forem aplicadas, o atributo instanceEncodingOption será adicionado ao elemento sqlWorkflowInstanceStore e o valor do atributo será definido como GZip. Quando essa opção não estiver marcada e as configurações forem aplicadas, o valor do atributo instanceEncodingOption será definido como None.

Manter instâncias após conclusão

Atributo instanceCompletionAction no elemento sqlWorkflowInstanceStore

Quando a opção Manter instâncias após conclusão estiver marcada e as configurações forem aplicadas, o atributo instanceCompletionAction será adicionado ao elemento sqlWorkflowInstanceStore e o valor do atributo será definido como DeleteNothing. Quando essa opção não estiver marcada e as configurações forem aplicadas, o valor do atributo instanceCompletionAction será definido como DeleteAll (que é o valor padrão).

Ação em exceção de bloqueio de instância

Atributo instanceLockedExceptionAction no elemento sqlWorkflowInstanceStore

O valor do atributo Ação em exceção de bloqueio de instância é definido com o valor especificado para esse campo. O valor será definido como NoRetry se você selecionar a opção None para esse campo. Para outras opções, as opções e os valores serão iguais nessa caixa de diálogo e no arquivo de configuração.

Período de renovação de bloqueio do host

Atributo hostLockRenewalPeriod no elemento sqlWorkflowInstanceStore

Quando você altera o valor do campo Período de renovação de bloqueio do host e aplica as configurações, o valor do atributo hostLockRenewalPeriod do elemento sqlWorkflowInstanceStore é definido com o valor especificado para esse campo.

Período de detecção de instâncias executáveis

Atributo runnableInstancesDetectionPeriod no elemento sqlWorkflowInstance

Quando você altera o valor do campo Período de detecção de instâncias executáveis e aplica as configurações, o valor do atributo runnableInstancesDetectionPeriod do elemento sqlWorkflowInstanceStore é definido com o valor especificado para esse campo.

  2011-12-05