Freigeben über


<sendMessageChannelCache>

Ein Dienstverhalten, das es ermöglicht, die Cachefreigabeebenen anzupassen sowie die Einstellungen des Channelfactorycaches und des Channelcaches für Workflows festzulegen, die Meldungen mit Senden-Messagingaktivitäten an Dienstendpunkte senden.

Schemahierarchie

<system.serviceModel> des Workflows
  <behaviors> des Workflows
    <serviceBehaviors> des Workflows
      <behavior> von <serviceBehaviors> des Workflows
        <sendMessageChannelCache>

Syntax

<behaviors>  <serviceBehaviors>    <behavior name=String">       <sendMessageChannelCache allowUnsafeCaching="Boolean" >                   <channelSettings idleTimeout="TimeSpan" leaseTimeout="TimeSpan" maxItemsInCache="Integer" />           <factorySettings idleTimeout="TimeSpan" leaseTimeout="TimeSpan" maxItemsInCache="Integer" />       </sendMessageChannelCache>    </behavior>  </serviceBehaviors></behaviors>

Attribute und Elemente

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

Attribute

Attribut Beschreibung

allowUnsafeCaching

Ein boolescher Wert, der angibt, ob das Zwischenspeichern aktiviert ist. Wenn der Workflowdienst benutzerdefinierte Bindungen oder benutzerdefiniertes Verhalten aufweist, könnte das Zwischenspeichern unsicher sein und ist daher standardmäßig deaktiviert. Wenn Sie jedoch das Zwischenspeichern aktivieren möchten, dann legen Sie diese Eigenschaft auf true fest.

Untergeordnete Elemente

Element Beschreibung

<channelSettings>

Gibt die Einstellungen des Channelcaches an.

<factorySettings>

Gibt die Einstellungen des Channelfactorycaches an.

Übergeordnete Elemente

Element Beschreibung

<behavior> von <serviceBehaviors> des Workflows

Gibt ein Verhaltenselement an.

Hinweise

Dieses Dienstverhalten ist für Workflows bestimmt, die Meldungen an Dienstendpunkte senden. Diese Workflows sind in der Regel Clientworkflows, könnten jedoch auch Workflowdienste sein, die in einem WorkflowServiceHost gehostet werden.

Standardmäßig wird in einem von einem WorkflowServiceHost gehosteten Workflow der von Send-Messagingaktivitäten verwendete Cache von allen Workflowinstanzen im WorkflowServiceHost (Zwischenspeichern auf Hostebene) gemeinsam verwendet. Bei einen Clientworkflow, der nicht von einem WorkflowServiceHost gehostet wird, steht der Cache nur der Workflowinstanz zur Verfügung (Zwischenspeichern auf Instanzebene). In einem Workflow, der in der Konfiguration definierte Endpunkte besitzt, ist das Zwischenspeichern für jede Sendeaktivität standardmäßig deaktiviert.

Weitere Informationen über dazu, wie die Standardcachefreigabeebenen und die Cacheeinstellungen für die Channelfactory und den Channelcache geändert werden, finden Sie unter Changing the Cache Sharing Levels for Send Activities.

Beispiel

In einem gehosteten Workflowdienst können Sie die Einstellungen für den Factorycache und den Channelcache in der Anwendungskonfigurationsdatei angeben. Fügen Sie dafür ein Dienstverhalten hinzu, das die Cacheeinstellungen für die Factory und den Channelcache enthält, und fügen Sie dieses Dienstverhalten dem Dienst hinzu. Das folgende Beispiel zeigt den Inhalt einer Konfigurationsdatei, die das **MyChannelCacheBehavior **-Dienstverhalten mit dem benutzerdefinierten Factorycache und den Channelcacheeinstellungen enthält. Dieses Dienstverhalten wird dem Dienst mithilfe des **behaviorConfiguarion **-Attributs hinzugefügt.

<configuration>  
  <system.serviceModel>
    <!-- List of other config sections here --> 
    <behaviors>
      <serviceBehaviors>
        <behavior name="MyChannelCacheBehavior">
          <sendMessageChannelCache allowUnsafeCaching ="false" >
            <!-- Control only the host level settings --> 
            <factorySettings maxItemsInCache = "8" idleTimeout = "00:05:00" leaseTimeout="10:00:00" />
            <channelSettings maxItemsInCache = "32" idleTimeout = "00:05:00" leaseTimeout="00:06:00" />
          </sendMessageChannelCache>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <services>
      <service name="MyService" behaviorConfiguration="MyChannelCacheBehavior" />
    </services>
  </system.serviceModel>
</configuration> 

Siehe auch

Verweis

SendMessageChannelCache
SendMessageChannelCacheElement
Send

Weitere Ressourcen

Changing the Cache Sharing Levels for Send Activities