Como a solicitação é contada no Amazon sqs?

1

Minha fila de sqs está recebendo 1 milhão de mensagens por dia (por exemplo, número de mensagens enviadas) e o número de mensagens vazias recebidas é de cerca de 2,5 milhões por dia, então imagino que 1 mês é cerca de 105 milhões de mensagens, mas faturamento da Amazon diz que seu pedido de 255 milhões por mês.

Como é solicitado contado em sqs?

Cada comando é contado como 2 pedidos?

    
por J L 27.05.2018 / 23:21

1 resposta

2

Cada interação da API é faturada como uma quantidade de solicitações ceil(payload_size_kb / 64kb) , portanto, cada solicitação (enviar, receber, receber vazia) é faturada como um número de solicitações que variam de 1 a 4 (256kb é a carga máxima). p>

Veja o link .

Se você tem 2,5 milhões de entradas vazias por dia, então você tem um número muito grande de consumidores ou não está usando pesquisas longas. Você definitivamente deveria estar usando longas pesquisas. Eu nunca encontrei um caso em que não fosse apropriado.

Long polling helps reduce the cost of using Amazon SQS by eliminating the number of empty responses (when there are no messages available for a ReceiveMessage request) and false empty responses (when messages are available but aren't included in a response).

https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-long-polling.html

Long Polling às vezes é mal entendido, já que o parâmetro queue é chamado de coisas como Tempo de Espera de Mensagem e WaitTimeSeconds e isso é ocasionalmente mal interpretado para significar que o consumidor esperará ou será atrasado por tantos segundos ... mas este não é o caso. Essa é apenas a quantidade de tempo que o consumidor aguarda quando a mensagem 0 está disponível. Quando uma mensagem está disponível, ela ainda é retornada imediatamente. Se a fila estiver vazia e um consumidor tiver, digamos, 7 segundos em uma pesquisa longa de 20 segundos quando a próxima mensagem chegar, o consumidor não esperará pelos 13 segundos restantes. A nova mensagem é retornada imediatamente.

Você quase sempre usará polling longo e usará o valor máximo possível de 20 segundos. Esse valor deveria ter sido o padrão, e um consumidor que desejasse mais alguma coisa deveria ter sido obrigado a especificá-lo.

Se seus clientes puderem lidar com várias mensagens por vez, aumentar o número de mensagens solicitadas para o valor máximo de 10 também reduzirá o número de solicitações faturáveis. Novamente, definir esse valor para mais de 1 não aumentará o tempo de espera. Se menos de um máximo de mensagens estiverem disponíveis, o número disponível será retornado imediatamente, quando houver tempo de pesquisa. Você só espera quando as mensagens disponíveis são 0.

    
por 28.05.2018 / 04:26