Filas no Windows Communication Foundation

Os tópicos nesta seção discutem o suporte do Windows Communication Foundation (WCF) para filas. O WCF fornece suporte para enfileiramento aproveitando o Microsoft Message Queuing (anteriormente conhecido como MSMQ) como um transporte e habilita os seguintes cenários:

  • Aplicações com acoplamento flexível. O envio de aplicativos pode enviar mensagens para filas sem precisar saber se o aplicativo recetor está disponível para processar a mensagem. A fila fornece independência de processamento que permite que um aplicativo de envio envie mensagens para a fila a uma taxa que não depende da rapidez com que os aplicativos de recebimento podem processar as mensagens. A disponibilidade geral do sistema aumenta quando o envio de mensagens para uma fila não está fortemente acoplado ao processamento de mensagens.

  • Isolamento de falhas. Os aplicativos que enviam ou recebem mensagens para uma fila podem falhar sem afetar uns aos outros. Se, por exemplo, o aplicativo de recebimento falhar, o aplicativo de envio poderá continuar a enviar mensagens para a fila. Quando o recetor está ligado novamente, ele pode processar as mensagens da fila. O isolamento de falhas aumenta a confiabilidade e a disponibilidade gerais do sistema.

  • Nivelamento de carga. O envio de aplicativos pode sobrecarregar o recebimento de aplicativos com mensagens. As filas podem gerenciar taxas de produção e consumo de mensagens incompatíveis para que um recetor não fique sobrecarregado.

  • Operações desconectadas. As operações de envio, recebimento e processamento podem ser desconectadas ao se comunicar por redes de alta latência ou redes de disponibilidade limitada, como no caso de dispositivos móveis. As filas permitem que essas operações continuem, mesmo quando os pontos de extremidade estão desconectados. Quando a conexão é restabelecida, a fila encaminha mensagens para o aplicativo de recebimento.

Para usar o recurso de filas em um aplicativo WCF, você pode usar uma das associações padrão ou pode criar uma associação personalizada se uma das associações padrão não atender aos seus requisitos. Para obter mais informações sobre associações padrão relevantes e como escolher uma, consulte Como trocar mensagens com pontos de extremidade WCF e aplicativos de enfileiramento de mensagens. Para obter mais informações sobre como criar associações personalizadas, consulte Ligações personalizadas.

Nesta Secção

Visão geral das filas
Uma visão geral dos conceitos de enfileiramento de mensagens.

Enfileiramento no WCF
Uma visão geral do suporte à fila do WCF.

Como: Mensagens em fila do Exchange com pontos de extremidade WCF
Explica como usar a NetMsmqBinding classe para se comunicar entre um cliente WCF e serviço WCF.

Como: Trocar mensagens com pontos de extremidade WCF e aplicativos de enfileiramento de mensagens
Explica como usar o MsmqIntegrationBinding para se comunicar entre aplicativos WCF e Enfileiramento de Mensagens.

Agrupando mensagens em fila em uma sessão
Explica como agrupar mensagens em uma fila para facilitar o processamento de mensagens correlacionadas por um único aplicativo de recebimento.

Mensagens em lote em uma transação
Explica como enviar mensagens em lote em uma transação.

Usando filas de mensagens mortas para lidar com falhas de transferência de mensagens
Explica como lidar com falhas de transferência e entrega de mensagens usando filas de letra morta e como processar mensagens da fila de mensagens mortas.

Tratamento de mensagens suspeitas
Explica como lidar com mensagens suspeitas (mensagens que excederam o número máximo de tentativas de entrega para o aplicativo de recebimento).

Protegendo mensagens usando a segurança de transporte
Descreve como usar a segurança de transporte para proteger mensagens em fila.

Protegendo mensagens usando a segurança de mensagens
Descreve como usar a segurança de mensagens para proteger mensagens em fila.

Solução de problemas de mensagens em fila
Explica como solucionar problemas comuns de enfileiramento.

Práticas recomendadas para comunicação em fila
Explica as práticas recomendadas para usar a comunicação em fila do WCF.