Padrões de mensagensMessaging patterns

A natureza distribuída das aplicações da cloud requer uma infraestrutura de mensagens que liga os componentes e serviços, idealmente de forma livremente ligada para maximizar a escalabilidade.The distributed nature of cloud applications requires a messaging infrastructure that connects the components and services, ideally in a loosely coupled manner in order to maximize scalability. As mensagens assíncronas são amplamente utilizadas e oferecem muitas vantagens, mas também colocam desafios, como a ordenação de mensagens, a gestão de mensagens não processáveis, a idempotência e muito mais.Asynchronous messaging is widely used, and provides many benefits, but also brings challenges such as the ordering of messages, poison message management, idempotency, and more.

PadrãoPattern ResumoSummary
Verificação de AfirmaçõesClaim Check Divida uma mensagem grande numa verificação de afirmações e num payload para evitar sobrecarregar um barramento de mensagens.Split a large message into a claim check and a payload to avoid overwhelming a message bus.
Consumidores ConcorrentesCompeting Consumers Permita que vários consumidores em simultâneo processem mensagens recebidas no mesmo canal de mensagens.Enable multiple concurrent consumers to process messages received on the same messaging channel.
Pipes e FiltrosPipes and Filters Divida uma tarefa que realiza processamento complexo numa série de elementos separados que podem ser reutilizados.Break down a task that performs complex processing into a series of separate elements that can be reused.
Fila de PrioridadePriority Queue Defina prioridades dos pedidos enviados para os serviços, de modo a que os pedidos com uma prioridade mais alta sejam recebidos e processados mais rapidamente do que aqueles com uma prioridade mais baixa.Prioritize requests sent to services so that requests with a higher priority are received and processed more quickly than those with a lower priority.
Publisher-SubscriberPublisher-Subscriber Permita que uma aplicação anuncie os eventos para vários consumidores interessados de forma assíncrona, sem acoplar os remetentes aos destinatários.Enable an application to announce events to multiple interested consumers asynchronously, without coupling the senders to the receivers.
Redistribuição de Carga Baseada na FilaQueue-Based Load Leveling Utilize uma fila que age como uma memória intermédia entre uma tarefa e um serviço que este invoca para cargas pesadas intermitentes.Use a queue that acts as a buffer between a task and a service that it invokes in order to smooth intermittent heavy loads.
Supervisor de Agente do SchedulerScheduler Agent Supervisor Coordene um conjunto de ações entre um conjunto distribuído de serviços e outros recursos remotos.Coordinate a set of actions across a distributed set of services and other remote resources.