Freigeben über


<Sqlworkflowinstancestore>

Ein Dienstverhalten, mit dem Sie das SqlWorkflowInstanceStore Feature konfigurieren können, das das Beibehalten von Statusinformationen für Workflowdienstinstanzen in einer SQL Server 2005- oder SQL Server 2008-Datenbank unterstützt. Weitere Informationen zu diesem Feature finden Sie im SQL-Workflowinstanzspeicher.

<Konfiguration>
   <System. ServiceModel>
     <verhaltensweisen>
       <serviceBehaviors>
         <Benehmen>
           <Sqlworkflowinstancestore>

Syntax

<behaviors>
  <serviceBehaviors>
    <behavior name="String">
      <sqlWorkflowInstanceStore connectionStringName="String"
                                hostLockRenewalPeriod="TimeSpan"
                                instanceCompletionAction="DeleteNothing/DeleteAll"
                                instanceEncodingAction="None/GZip"
                                instanceLockedExceptionAction="NoRetry/BasicRetry/AggressiveRetry"
                                runnableInstancesDetectionPeriod="TimeSpan" />
    </behavior>
  </serviceBehaviors>
</behaviors>

Attribute und Elemente

In den folgenden Abschnitten werden Attribute sowie untergeordnete und übergeordnete Elemente beschrieben.

Attribute

Merkmal Description
connectionString Eine Zeichenfolge, die eine Verbindungszeichenfolge enthält, die zum Herstellen einer Verbindung mit einer zugrunde liegenden Persistenzdatenbank verwendet wird.
connectionStringName Eine Zeichenfolge, die eine benannte Verbindungszeichenfolge mit dem Datenbankserver enthält. Ein Beispiel für eine benannte Verbindungszeichenfolge ist "DefaultConnectionString".
hostLockRenewalPeriod Ein Timespan-Wert, der den Zeitraum angibt, in dem der Host die Sperre für eine Instanz verlängern muss. Wenn der Host die Sperre im angegebenen Zeitraum nicht verlängert, wird die Instanz entsperrt und kann von einem anderen Host übernommen werden.

Das Entladen eines Workflows bedeutet, dass er auch beibehalten wird. Wenn dieses Attribut auf Null festgelegt ist, wird die Workflowinstanz beibehalten und sofort entladen, nachdem der Workflow im Leerlauf ist. Wenn Sie dieses Attribut auf TimeSpan.MaxValue festlegen, wird der Entladevorgang effektiv deaktiviert. Leerlaufworkflowinstanzen werden nie entladen.
instanceCompletionAction Ein Wert, der angibt, ob Workflowinstanzdaten nach Abschluss der Workflowinstanz im Persistenzspeicher gespeichert werden oder ob sie zu diesem Zeitpunkt gelöscht werden. Dieser Wert ist vom Typ InstanceCompletionAction.

Die aufgezählten Aktionen bestehen aus dem Löschen der Instanzdaten aus dem Persistenzspeicher oder dem Löschen der Instanzdaten aus dem Persistenzspeicher, wenn die Instanz ihren Vorgang abgeschlossen hat.

Wenn Instanzen nach Abschluss des Abschlusses beibehalten werden, wird die Persistenzdatenbank schnell vergrößert, und dies wirkt sich auf die Leistung der Datenbank aus. Sie sollten eine Datenbanklöschrichtlinie so konfigurieren, dass diese Datensätze regelmäßig gelöscht werden, um sicherzustellen, dass sich die Leistung der Datenbank auf der Ebene befindet, die Ihren Leistungsanforderungen entspricht.
instanceEncodingOption Ein optionaler Wert, der angibt, ob die Instanzstatusinformationen mithilfe des GZip-Algorithmus komprimiert werden, bevor die Informationen im Persistenzspeicher gespeichert werden. Dieser Wert ist vom Typ InstanceEncodingOption. Mögliche Werte für diese Eigenschaft sind None, die keine Komprimierung angibt und GZip, die angibt, dass Instanzdaten komprimiert werden und den Gzip-Algorithmus verwendet.
instanceLockedExceptionAction Ein Wert, der die Aktion angibt, die als Reaktion auf eine Ausnahme ausgelöst wird, wenn der Host versucht, eine Instanz zu sperren, da die Instanz derzeit von einem anderen Host gesperrt ist. Dieser Wert ist vom Typ InstanceLockedExceptionAction.

Die für dieses Feld zulässigen Optionen sind: None, Basic Retry und Aggressive Wiederholung. Der Standardwert ist None. Die folgende Liste enthält die Beschreibungen für diese drei Optionen:

- Keine. Der Diensthost versucht nicht, die Instanz zu sperren und den InstanceLockedException Aufrufer zu übergeben.
- Einfacher Wiederholungsversuche. Der Diensthost wiederholt die Instanz mit einem linearen Wiederholungsintervall und übergibt die Ausnahme an den Aufrufer am Ende der Sequenz.
- Aggressiver Wiederholungsversuche. Der Diensthost versucht erneut, die Instanz mit einer exponentiell steigenden Verzögerung zu sperren und den InstanceLockedException Aufrufer am Ende der Sequenz an den Aufrufer zu übergeben.
runnableInstancesDetectionPeriod

Untergeordnete Elemente

Keiner.

Übergeordnete Elemente

Element Description
<Verhalten> von <serviceBehaviors> Gibt ein Verhaltenselement an.

Siehe auch