As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Lógica de entrega de filas FIFO no Amazon SQS
Os conceitos a seguir esclarecem como as filas FIFO do Amazon SQS lidam com o envio e o recebimento de mensagens, especialmente quando lidam com pedidos e grupos de mensagens. IDs
Enviar mensagens
As filas FIFO do Amazon SQS preservam a ordem das mensagens usando IDs desduplicação e grupo de mensagens exclusivos. IDs Este tópico destaca a importância do grupo de mensagens IDs para manter uma ordem rigorosa dentro dos grupos e destaca as melhores práticas para garantir a entrega confiável e ordenada de mensagens entre vários produtores.
- 
                    Preservação de pedidos - 
                            Quando várias mensagens são enviadas sucessivamente para uma fila FIFO com desduplicação exclusiva de mensagens, o IDs Amazon SQS as armazena e confirma sua transmissão. Essas mensagens são então recebidas e processadas na ordem exata em que foram transmitidas. 
 
- 
                            
- 
                    ID do grupo de mensagens - 
                            Nas filas FIFO, as mensagens são ordenadas com base na ID do grupo de mensagens. Se vários produtores ou threads enviarem mensagens com o mesmo ID de grupo de mensagens, o Amazon SQS garante que elas sejam armazenadas e processadas na ordem em que chegam. 
- 
                            Prática recomendada: para garantir uma ordem estrita das mensagens entre vários produtores, atribua um ID de grupo de mensagens exclusivo para todas as mensagens de cada produtor. 
 
- 
                            
- 
                    Pedido por grupo - 
                            A lógica de fila FIFO se aplica por ID de grupo de mensagens: - 
                                    Cada ID de grupo de mensagens representa um grupo de mensagens distinto e ordenado. 
- 
                                    Dentro de um ID de grupo de mensagens, todas as mensagens são enviadas e recebidas em ordem estrita. 
- 
                                    Mensagens com grupos de mensagens diferentes IDs podem chegar ou ser processadas fora de ordem uma em relação à outra. 
 
- 
                                    
 - 
                            Requisito - Você deve associar uma ID de grupo de mensagens a cada mensagem. Se uma mensagem for enviada sem uma ID de grupo, a ação falhará. 
- 
                            Cenário de grupo único - Se você precisar que todas as mensagens sejam processadas em ordem estrita, use o mesmo ID de grupo de mensagens para cada mensagem. 
 
- 
                            
Recebimento de mensagens
As filas FIFO do Amazon SQS lidam com a recuperação de mensagens, incluindo processamento em lote, garantias de pedidos FIFO e limitações na solicitação de um grupo de mensagens específico. IDs Este tópico explica como o Amazon SQS recupera mensagens dentro e entre grupos de mensagens, IDs mantendo regras rígidas de ordenação e visibilidade.
- 
                    Recuperação em lote - 
                            Ao receber mensagens de uma fila FIFO com vários grupos de mensagens IDs, o Amazon SQS: - 
                                    Tenta retornar o maior número possível de mensagens com o mesmo ID de grupo de mensagens em uma única chamada. 
- 
                                    Permite que outros consumidores processem mensagens de diferentes grupos de mensagens IDs simultaneamente. 
 
- 
                                    
- 
                            Esclarecimento importante - 
                                    Você pode receber várias mensagens do mesmo ID de grupo de mensagens em um lote (até 10 mensagens em uma única chamada usando o MaxNumberOfMessagesparâmetro).
- 
                                    No entanto, você não poderá receber mensagens adicionais do mesmo ID de grupo de mensagens em solicitações subsequentes até: - 
                                            As mensagens atualmente recebidas são excluídas ou 
- 
                                            Eles se tornam visíveis novamente (por exemplo, após o tempo limite de visibilidade expirar). 
 
- 
                                            
 
- 
                                    
 
- 
                            
- 
                    Garantia de pedido FIFO - 
                            As mensagens recuperadas em um lote mantêm sua ordem FIFO dentro do grupo. 
- 
                            Se menos de 10 mensagens estiverem disponíveis para o mesmo ID de grupo de mensagens, o Amazon SQS poderá incluir mensagens de outro grupo de mensagens IDs no mesmo lote, mas cada grupo retém a ordem FIFO. 
 
- 
                            
- 
                    Limitações do consumidor - 
                            Você não pode solicitar explicitamente o recebimento de mensagens de um ID de grupo de mensagens específico. 
 
- 
                            
Repetir várias vezes
Produtores e consumidores podem repetir com segurança ações que falharam nas filas FIFO do Amazon SQS sem interromper a ordem das mensagens ou introduzir duplicatas. Este tópico destaca como os tempos limite de desduplicação IDs e visibilidade garantem a integridade da mensagem durante novas tentativas.
- 
                    Produtor tenta novamente - 
                            Se uma SendMessageação falhar, o produtor pode tentar novamente enviar a mensagem várias vezes com o mesmo ID de desduplicação de mensagens.
- 
                            Desde que o produtor receba pelo menos uma confirmação antes que o intervalo de desduplicação expire, tente novamente: - 
                                    Não introduza mensagens duplicadas. 
- 
                                    Não interrompa a ordem das mensagens. 
 
- 
                                    
 
- 
                            
- 
                    Tentativas do consumidor - 
                            Se uma ReceiveMessageação falhar, o consumidor poderá tentar novamente quantas vezes for necessário usando o mesmo ID de tentativa de solicitação de recebimento.
- 
                            Desde que o consumidor receba pelo menos uma confirmação antes que o tempo limite de visibilidade expire, tente novamente: - 
                                    Não interrompa a ordem das mensagens. 
 
- 
                                    
 
- 
                            
Notas adicionais sobre o comportamento do FIFO
Saiba mais sobre como lidar com os tempos limite de visibilidade, habilitar o processamento paralelo com vários grupos IDs de mensagens e garantir o processamento sequencial estrito em cenários de grupo único.
- 
                    Lidando com o tempo limite de visibilidade - 
                            Quando uma mensagem é recuperada, mas não excluída, ela permanece invisível até que o tempo limite de visibilidade expire. 
- 
                            Nenhuma mensagem adicional do mesmo ID de grupo de mensagens será retornada até que a primeira mensagem seja excluída ou fique visível novamente. 
 
- 
                            
- 
                    Concorrência e processamento paralelo - 
                            As filas FIFO permitem o processamento paralelo de mensagens em diferentes grupos de mensagens. IDs 
- 
                            Para maximizar a simultaneidade, projete seu sistema com vários grupos de mensagens IDs para fluxos de trabalho independentes. 
 
- 
                            
- 
                    Cenários de grupo único - 
                            Para o processamento sequencial estrito de todas as mensagens em uma fila FIFO, use um único ID de grupo de mensagens para todas as mensagens na fila. 
 
- 
                            
Exemplos para uma melhor compreensão
A seguir estão cenários práticos que ilustram o comportamento da fila FIFO no Amazon SQS.
- 
                    Cenário 1: ID de grupo único - 
                            Um produtor envia cinco mensagens com o mesmo grupo de ID de grupo de mensagens Grupo A. 
- 
                            Um consumidor recebe essas mensagens na ordem FIFO. Até que o consumidor exclua essas mensagens ou o tempo limite de visibilidade expire, nenhuma mensagem adicional do Grupo A será recebida. 
 
- 
                            
- 
                    Cenário 2: Vários grupos IDs - 
                            Um produtor envia cinco mensagens para o Grupo A e 5 para o Grupo B. 
- 
                            O Consumidor 1 processa as mensagens do Grupo A, enquanto o Consumidor 2 processa as mensagens do Grupo B. Isso permite o processamento paralelo com ordenação estrita mantida dentro de cada grupo. 
 
- 
                            
- 
                    Cenário 3: recuperação em lote - 
                            Um produtor envia sete mensagens para o Grupo A e três para o Grupo B. 
- 
                            Um único consumidor recupera até 10 mensagens. Se a fila permitir, ela poderá retornar: - 
                                    Sete mensagens do Grupo A e três do Grupo B (ou menos se houver menos mensagens disponíveis em um único grupo). 
 
- 
                                    
 
-