Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Define uma ligação em fila adequada para comunicação entre máquinas.
<configuração>
<system.serviceModel>
<Encadernações>
<netMsmqBinding>
Sintaxe
<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>
Atributos e Elementos
As seções a seguir descrevem atributos, elementos filho e elementos pai.
Attributes
| Attribute | Description |
|---|---|
closeTimeout |
Um TimeSpan valor que especifica o intervalo de tempo fornecido para a conclusão de uma operação de fechamento. Este valor deve ser maior ou igual a Zero. O padrão é 00:01:00. |
customDeadLetterQueue |
Um URI que contém a localização da fila de cartas mortas por aplicação, onde são colocadas mensagens que expiraram ou que falharam a transferência ou entrega. A fila de cartas mortas é uma fila no gestor de filas da aplicação de envio para mensagens expiradas que não foram entregues. O URI especificado por CustomDeadLetterQueue deve usar o esquema net.msmq. |
deadLetterQueue |
Um DeadLetterQueue valor que especifica que tipo de fila de letras mortas usar, se houver. Uma fila de letras mortas é o local onde as mensagens que não foram entregues à aplicação serão transferidas. Para mensagens que requerem exactlyOnce garantia (isto é, o exactlyOnce atributo está definido para true), este atributo corresponde por defeito à fila transacional de letras mortas do sistema no MSMQ.Para mensagens que não requerem garantias, este atributo é por defeito . null |
durable |
Um valor booleano que indica se a mensagem é durável ou volátil na fila. Uma mensagem duradoura sobrevive a um crash do gestor de filas, enquanto uma mensagem volátil não. Mensagens voláteis são úteis quando as aplicações requerem menor latência e podem tolerar mensagens perdidas ocasionais. Se o exactlyOnce atributo estiver definido para true, as mensagens devem ser duradouras. A predefinição é true. |
exactlyOnce |
Um valor booleano que indica se cada mensagem processada por esta ligação é entregue apenas uma vez. O remetente será então notificado de falhas na entrega. Quando durable é false, este atributo é ignorado e as mensagens são transferidas sem garantia de entrega. A predefinição é true. Para obter mais informações, consulte ExactlyOnce. |
maxBufferPoolSize |
Um inteiro que especifica o tamanho máximo do buffer pool para esta ligação. O padrão é 8. |
maxReceivedMessageSize |
Um inteiro positivo que define o tamanho máximo da mensagem, em bytes, incluindo cabeçalhos, que é processado por esta ligação. O remetente de uma mensagem que ultrapasse este limite receberá uma falha SOAP. O recetor elimina a mensagem e cria uma entrada do evento no registo de rastreamento. O padrão é 65536. Esta limitação no tamanho da mensagem destina-se a limitar a exposição a ataques de Negação de Serviço (DoS). |
maxRetryCycles |
Um inteiro que indica o número de ciclos de retentativa usados pela funcionalidade de deteção de mensagens venenosas. Uma mensagem torna-se uma mensagem venenosa quando falha em todas as tentativas de entrega de todos os ciclos. O padrão é 3. Para obter mais informações, consulte MaxRetryCycles. |
name |
Atributo obrigatório. Uma cadeia que contém o nome da configuração da ligação. Este valor deve ser único porque é usado como identificação da ligação. A partir do .NET Framework 4, os bindings e comportamentos não são obrigatórios de ter um nome. Para mais informações sobre configuração padrão e ligações e comportamentos sem nome, consulte Configuração Simplificada e Configuração Simplificada para Serviços WCF. |
openTimeout |
Um TimeSpan valor que especifica o intervalo de tempo previsto para que uma operação aberta seja concluída. Este valor deve ser maior ou igual a Zero. O padrão é 00:01:00. |
QueueTransferProtocol |
Um valor válido QueueTransferProtocol que especifica o transporte do canal de comunicação em fila que esta ligação utiliza. O MSMQ não suporta endereçamento do Active Directory ao utilizar o Protocolo de Mensagens Confiáveis SOAP. Portanto, não deve definir este atributo como Srmp ou quando o Srmps atributo está definido como useActiveDirectorytrue . |
receiveErrorHandling |
Um ReceiveErrorHandling valor que especifica como as mensagens venenosas e não despacháveis são tratadas. |
receiveRetryCount |
Um inteiro que especifique o número máximo de vezes que o gestor de filas deve tentar enviar uma mensagem antes de a transferir para a fila de retentativa. |
receiveTimeout |
Um TimeSpan valor que especifica o intervalo de tempo fornecido para a conclusão de uma operação de receção. Este valor deve ser maior ou igual a Zero. O padrão é 00:10:00. |
retryCycleDelay |
Um valor TimeSpan que especifica o atraso de tempo entre ciclos de retentativa ao tentar entregar uma mensagem que não pôde ser entregue imediatamente. O valor define apenas o tempo mínimo de espera porque o tempo real de espera pode ser maior. O valor padrão é 00:10:00. Para obter mais informações, consulte RetryCycleDelay. |
sendTimeout |
Um TimeSpan valor que especifica o intervalo de tempo fornecido para que uma operação de envio seja concluída. Este valor deve ser maior ou igual a Zero. O padrão é 00:01:00. |
timeToLive |
Um valor TimeSpan que especifica quanto tempo as mensagens são válidas antes de expirarem e serem colocadas na fila de cartas mortas. O padrão é 1.00:00:00. Este atributo é definido para garantir que as mensagens sensíveis ao tempo não se tornem obsoletas antes de serem processadas pelas aplicações recetoras. Uma mensagem numa fila que não é consumida pela aplicação recetora dentro do intervalo de tempo especificado é dita como expirada. As mensagens expiradas são enviadas para uma fila especial chamada fila de letras mortas. A localização da fila de letras mortas é definida com o DeadLetterQueue atributo ou para o padrão apropriado, com base nas garantias. |
usingActiveDirectory |
Um valor booleano que especifica se os endereços da fila devem ser convertidos usando o Active Directory. Os endereços de fila MSMQ podem consistir em nomes de caminhos ou nomes de formatos diretos. Com um nome de formato direto, o MSMQ resolve o nome do computador usando DNS, NetBIOS ou IP. Com um nome de caminho, o MSMQ resolve o nome do computador usando o Active Directory. Por defeito, o transporte em fila do Windows Communication Foundation (WCF) converte o URI de uma fila de mensagens num nome de formato direto. Ao definir a UseActiveDirectory propriedade como true, uma aplicação pode especificar que o transporte em fila deve resolver o nome do computador usando Active Directory em vez de DNS, NetBIOS ou IP. |
useMsmqTracing |
Um valor booleano que especifica se as mensagens processadas por esta ligação devem ser rastreadas. A predefinição é false. Quando o rastreio está ativado, as mensagens de relatório são criadas e enviadas para a fila de relatórios sempre que a mensagem sai ou chega a um computador de Fila de Mensagens. |
useSourceJournal |
Um valor booleano que especifique cópias de mensagens processadas por esta ligação deve ser armazenado no diário de origem. A predefinição é false.Aplicações em fila que querem manter um registo das mensagens que saíram da fila de saída do computador podem copiar as mensagens para uma fila de diário. Quando uma mensagem sai da fila de saída e é recebido um reconhecimento de que a mensagem foi recebida no computador de destino, uma cópia da mensagem é mantida na fila de diário do sistema do computador emissor. |
Elementos filho
| Elemento | Description |
|---|---|
| <LeitorQuotas> | Define as restrições à complexidade das mensagens SOAP que podem ser processadas pelos endpoints configurados com esta ligação. Este elemento é do tipo XmlDictionaryReaderQuotasElement. |
| <Segurança> | Define as definições de segurança para a ligação. Este elemento é do tipo NetMsmqSecurityElement. |
Elementos Principais
| Elemento | Description |
|---|---|
| <Encadernações> | Este elemento contém uma coleção de encadernações padrão e personalizadas. |
Observações
A netMsmqBinding ligação fornece suporte para enfileiramento ao aproveitar o Microsoft Message Queuing (MSMQ) como transporte e permite suporte para aplicações frouxamente acopladas, isolamento de falhas, nivelamento de carga e operações desconectadas. Para uma discussão sobre estas funcionalidades, veja Filas no 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>
Consulte também
- NetMsmqBinding
- NetMsmqBindingElement
- <Encadernação>
- Ligações
- Configuração System-Provided Ligações
- Usando bindings para configurar serviços e clientes
- Filas na WCF