Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Définit une liaison mise en file d’attente adaptée à la communication entre ordinateurs.
<Configuration>
<system.serviceModel>
<Liaisons>
<netMsmqBinding>
Syntaxe
<netMsmqBinding>
<binding closeTimeout="TimeSpan"
customDeadLetterQueue="Uri"
deadLetterQueue="Uri"
durable="Boolean"
exactlyOnce="Boolean"
maxBufferPoolSize="Integer"
maxReceivedMessageSize="Integer"
maxRetryCycles="Integer"
name="String"
openTimeout="TimeSpan"
poisonMessageHandling="Disabled/EnabledIfSupported"
queueTransferProtocol="Native/Srmp/SrmpSecure"
receiveErrorHandling="Drop/Fault/Move/Reject"
receiveTimeout="TimeSpan"
receiveRetryCount="Integer"
rejectAfterLastRetry="Boolean"
retryCycleDelay="TimeSpan"
sendTimeout="TimeSpan"
timeToLive="TimeSpan"
useActiveDirectory="Boolean"
useMsmqTracing="Boolean"
useSourceJournal="Boolean">
<security>
<message algorithmSuite="Basic128/Basic192/Basic256/Basic128Rsa15/Basic256Rsa15/TripleDes/TripleDesRsa15/Basic128Sha256/Basic192Sha256/TripleDesSha256/Basic128Sha256Rsa15/Basic192Sha256Rsa15/Basic256Sha256Rsa15/TripleDesSha256Rsa15"
clientCredentialType="None/Windows/UserName/Certificate/InfoCard" />
<transport msmqAuthenticationMode="None/WindowsDomain/Certificate"
msmqEncryptionAlgorithm="RC4Stream/AES"
msmqProtectionLevel="None/Sign/EncryptAndSign"
msmqSecureHashAlgorithm="MD5/SHA1/SHA256/SHA512" />
</security>
<readerQuotas maxArrayLength="Integer"
maxBytesPerRead="Integer"
maxDepth="Integer"
maxNameTableCharCount="Integer"
maxStringContentLength="Integer" />
</binding>
</netMsmqBinding>
Attributs et éléments
Les sections suivantes décrivent des attributs, des éléments enfants et des éléments parents.
Attributes
| Caractéristique | Descriptif |
|---|---|
closeTimeout |
Valeur TimeSpan qui spécifie l’intervalle de temps fourni pour qu’une opération de fermeture se termine. Cette valeur doit être supérieure ou égale à Zero. La valeur par défaut est 00:01:00. |
customDeadLetterQueue |
URI qui contient l’emplacement de la file d’attente de lettres mortes par application, où les messages ayant expiré ou ayant échoué le transfert ou la remise sont placés. La file d’attente de lettres mortes est une file d’attente sur le gestionnaire de files d’attente de l’application d’envoi des messages expirés qui n’ont pas pu être remis. L’URI spécifié par CustomDeadLetterQueue doit utiliser le schéma net.msmq. |
deadLetterQueue |
Valeur DeadLetterQueue spécifiant le type de file d’attente de lettres mortes à utiliser, le cas échéant. Une file d’attente de lettres mortes est l’endroit où les messages qui n’ont pas pu être remis à l’application seront transférés. Pour les messages qui nécessitent exactlyOnce une assurance (autrement dit, l’attribut exactlyOnce est défini sur true), cet attribut est défini par défaut sur la file d’attente de lettres mortes transactionnelles à l’échelle du système dans MSMQ.Pour les messages qui ne nécessitent aucune garantie, cet attribut est défini par défaut nullsur . |
durable |
Valeur booléenne qui indique si le message est durable ou volatile dans la file d’attente. Un message durable survive à un plantage du gestionnaire de files d’attente, tandis qu’un message volatile ne le fait pas. Les messages volatiles sont utiles lorsque les applications nécessitent une latence plus faible et peuvent tolérer des messages perdus occasionnels. Si l’attribut exactlyOnce est défini truesur , les messages doivent être durables. La valeur par défaut est true. |
exactlyOnce |
Valeur booléenne qui indique si chaque message traité par cette liaison n’est remis qu’une seule fois. L’expéditeur sera alors averti des échecs de remise. Quand durable c’est falsele cas, cet attribut est ignoré et les messages sont transférés sans assurance de remise. La valeur par défaut est true. Pour plus d’informations, consultez ExactlyOnce. |
maxBufferPoolSize |
Entier qui spécifie la taille maximale du pool de mémoires tampons pour cette liaison. La valeur par défaut est 8. |
maxReceivedMessageSize |
Entier positif qui définit la taille maximale du message, en octets, y compris les en-têtes, qui est traité par cette liaison. L’expéditeur d’un message dépassant cette limite reçoit une erreur SOAP. Le destinataire supprime le message et crée une entrée de l’événement dans le journal des traces. La valeur par défaut est 65536. Cette limite de taille de message est destinée à limiter l’exposition aux attaques par déni de service (DoS). |
maxRetryCycles |
Entier qui indique le nombre de cycles de nouvelle tentative utilisés par la fonctionnalité de détection de messages incohérents. Un message devient un message incohérent lorsqu’il échoue toutes les tentatives de remise de tous les cycles. La valeur par défaut est 3. Pour plus d’informations, consultez MaxRetryCycles. |
name |
Attribut requis. Chaîne qui contient le nom de configuration de la liaison. Cette valeur doit être unique, car elle est utilisée comme identification pour la liaison. À compter de .NET Framework 4, les liaisons et les comportements ne sont pas nécessaires pour avoir un nom. Pour plus d’informations sur la configuration par défaut et les liaisons sans nom et les comportements, consultez Configuration simplifiée et Configuration simplifiée pour les services WCF. |
openTimeout |
Valeur TimeSpan qui spécifie l’intervalle de temps fourni pour qu’une opération ouverte se termine. Cette valeur doit être supérieure ou égale à Zero. La valeur par défaut est 00:01:00. |
QueueTransferProtocol |
Valeur valide QueueTransferProtocol qui spécifie le transport du canal de communication mis en file d’attente utilisé par cette liaison. MSMQ ne prend pas en charge l’adressage Active Directory lors de l’utilisation du protocole SOAP Reliable Messaging Protocol. Par conséquent, vous ne devez pas définir cet attribut Srmp sur ou Srmps lorsque l’attribut useActiveDirectory est défini sur true. |
receiveErrorHandling |
Valeur ReceiveErrorHandling qui spécifie la façon dont les messages incohérents et nonmodchables sont gérés. |
receiveRetryCount |
Entier qui spécifie le nombre maximal de fois où le gestionnaire de files d’attente doit tenter d’envoyer un message avant de le transférer vers la file d’attente de nouvelles tentatives. |
receiveTimeout |
Valeur TimeSpan qui spécifie l’intervalle de temps fourni pour qu’une opération de réception se termine. Cette valeur doit être supérieure ou égale à Zero. La valeur par défaut est 00:10:00. |
retryCycleDelay |
Valeur TimeSpan qui spécifie le délai entre les cycles de nouvelle tentative lors de la tentative de remise d’un message qui n’a pas pu être remis immédiatement. La valeur définit uniquement le temps d’attente minimal, car le temps d’attente réel peut être plus long. La valeur par défaut est 00:10:00. Pour plus d’informations, consultez RetryCycleDelay. |
sendTimeout |
Valeur TimeSpan qui spécifie l’intervalle de temps fourni pour qu’une opération d’envoi se termine. Cette valeur doit être supérieure ou égale à Zero. La valeur par défaut est 00:01:00. |
timeToLive |
Valeur TimeSpan qui spécifie la durée pendant laquelle les messages sont valides avant leur expiration et placés dans la file d’attente de lettres mortes. La valeur par défaut est 1.00:00:00. Cet attribut est défini pour s’assurer que les messages sensibles au temps ne deviennent pas obsolètes avant qu’ils ne soient traités par les applications de réception. Un message dans une file d’attente qui n’est pas consommée par l’application de réception dans l’intervalle de temps spécifié est dit expiré. Les messages expirés sont envoyés à une file d’attente spéciale appelée file d’attente de lettres mortes. L’emplacement de la file d’attente de lettres mortes est défini avec l’attribut DeadLetterQueue ou la valeur par défaut appropriée, en fonction des assurances. |
usingActiveDirectory |
Valeur booléenne qui spécifie si les adresses de file d’attente doivent être converties à l’aide d’Active Directory. Les adresses de file d’attente MSMQ peuvent se composer de noms de chemin d’accès ou de noms de format direct. Avec un nom de format direct, MSMQ résout le nom de l’ordinateur à l’aide de DNS, NetBIOS ou IP. Avec un nom de chemin d’accès, MSMQ résout le nom de l’ordinateur à l’aide d’Active Directory. Par défaut, le transport mis en file d’attente Windows Communication Foundation (WCF) convertit l’URI d’une file d’attente de messages en un nom de format direct. En définissant la UseActiveDirectory propriété sur true, une application peut spécifier que le transport mis en file d’attente doit résoudre le nom de l’ordinateur à l’aide d’Active Directory plutôt que DNS, NetBIOS ou IP. |
useMsmqTracing |
Valeur booléenne qui spécifie si les messages traités par cette liaison doivent être suivis. La valeur par défaut est false. Lorsque le suivi est activé, les messages de rapport sont créés et envoyés à la file d’attente du rapport chaque fois que le message quitte ou arrive à un ordinateur Message Queuing. |
useSourceJournal |
Valeur booléenne qui spécifie les copies des messages traités par cette liaison doit être stockée dans le journal source. La valeur par défaut est false.Les applications en file d’attente qui souhaitent conserver un enregistrement des messages qui ont quitté la file d’attente sortante de l’ordinateur peuvent copier les messages dans une file d’attente de journal. Une fois qu’un message quitte la file d’attente sortante et qu’un accusé de réception est reçu sur l’ordinateur de destination, une copie du message est conservée dans la file d’attente du journal système de l’ordinateur d’envoi. |
Éléments enfants
| Élément | Descriptif |
|---|---|
| <readerQuotas> | Définit les contraintes relatives à la complexité des messages SOAP qui peuvent être traités par les points de terminaison configurés avec cette liaison. Cet élément est de type XmlDictionaryReaderQuotasElement. |
| <sécurité> | Définit les paramètres de sécurité de la liaison. Cet élément est de type NetMsmqSecurityElement. |
Éléments parents
| Élément | Descriptif |
|---|---|
| <Liaisons> | Cet élément contient une collection de liaisons standard et personnalisées. |
Remarques
La netMsmqBinding liaison prend en charge la mise en file d’attente en tirant parti de Microsoft Message Queuing (MSMQ) en tant que transport et permet la prise en charge des applications faiblement couplées, l’isolation des défaillances, le nivellement de charge et les opérations déconnectées. Pour une discussion sur ces fonctionnalités, consultez Files d’attente dans WCF.
Example
<configuration>
<system.ServiceModel>
<bindings>
<netMsmqBinding>
<binding closeTimeout="00:00:10"
openTimeout="00:00:20"
receiveTimeout="00:00:30"
sendTimeout="00:00:40"
deadLetterQueue="net.msmq://localhost/blah"
durable="true"
exactlyOnce="true"
maxReceivedMessageSize="1000"
maxRetries="11"
maxRetryCycles="12"
poisonMessageHandling="Disabled"
rejectAfterLastRetry="false"
retryCycleDelay="00:05:55"
timeToLive="00:11:11"
sourceJournal="true"
useMsmqTracing="true"
useActiveDirectory="true">
<security>
<message clientCredentialType="Windows" />
</security>
</binding>
</netMsmqBinding>
</bindings>
</system.ServiceModel>
</configuration>