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á.
Trabalhar com filas de mensagens do Amazon Simple Queue Service
Uma fila de mensagens é o contêiner lógico usado para enviar mensagens de maneira confiável no Amazon Simple Queue Service. Existem dois tipos de filas: padrão e First-In, First-Out (FIFO – Primeiro a entrar, primeiro a sair). Para saber mais sobre as filas e as diferenças entre esses tipos, consulte o Guia do desenvolvedor do Amazon Simple Queue Service.
Este tópico descreve como criar, listar, excluir e obter o URL de uma fila do Amazon Simple Queue Service usando o AWS SDK for Java.
A variável sqsClient
usada nos exemplos a seguir pode ser criada a partir do trecho de código a seguir.
SqsClient sqsClient = SqsClient.create();
Quando você cria um SqsClient
usando o create()
método estático, o SDK configura a região usando a cadeia de provedores da região padrão e as credenciais usando a cadeia de provedores de credenciais padrão.
Criar uma fila
Use o SqsClient’s
createQueue
método e forneça um CreateQueueRequest
objeto que descreva os parâmetros da fila, conforme mostrado no trecho de código a seguir.
Importações
import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.sqs.SqsClient; import software.amazon.awssdk.services.sqs.model.*; import java.util.List;
Código
CreateQueueRequest createQueueRequest = CreateQueueRequest.builder() .queueName(queueName) .build(); sqsClient.createQueue(createQueueRequest);
Veja a amostra completa
Listar filas
Para listar as Amazon Simple Queue Service filas da sua conta, chame o SqsClient’s
listQueues
método com um ListQueuesRequest
objeto.
Quando você usa a forma do listQueues
Você pode fornecer um prefixo de nome de fila ao ListQueuesRequest
objeto para limitar os resultados às filas que correspondam a esse prefixo, conforme mostrado no código a seguir.
Importações
import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.sqs.SqsClient; import software.amazon.awssdk.services.sqs.model.*; import java.util.List;
Código
String prefix = "que"; try { ListQueuesRequest listQueuesRequest = ListQueuesRequest.builder().queueNamePrefix(prefix).build(); ListQueuesResponse listQueuesResponse = sqsClient.listQueues(listQueuesRequest); for (String url : listQueuesResponse.queueUrls()) { System.out.println(url); } } catch (SqsException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); }
Veja a amostra completa
Obter o URL de uma fila
O código a seguir mostra como obter o URL de uma fila chamando o SqsClient’s
getQueueUrl
método com um GetQueueUrlRequest
objeto.
Importações
import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.sqs.SqsClient; import software.amazon.awssdk.services.sqs.model.*; import java.util.List;
Código
GetQueueUrlResponse getQueueUrlResponse = sqsClient.getQueueUrl(GetQueueUrlRequest.builder().queueName(queueName).build()); String queueUrl = getQueueUrlResponse.queueUrl(); return queueUrl;
Veja a amostra completa
Excluir uma fila
Forneça o URL da fila para o DeleteQueueRequest
objeto. Em seguida, chame o SqsClient’s
deleteQueue
método para excluir uma fila, conforme mostrado no código a seguir.
Importações
import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.sqs.SqsClient; import software.amazon.awssdk.services.sqs.model.*; import java.util.List;
Código
public static void deleteSQSQueue(SqsClient sqsClient, String queueName) { try { GetQueueUrlRequest getQueueRequest = GetQueueUrlRequest.builder() .queueName(queueName) .build(); String queueUrl = sqsClient.getQueueUrl(getQueueRequest).queueUrl(); DeleteQueueRequest deleteQueueRequest = DeleteQueueRequest.builder() .queueUrl(queueUrl) .build(); sqsClient.deleteQueue(deleteQueueRequest); } catch (SqsException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }
Veja a amostra completa
Mais informações
-
CreateQueuena Referência da Amazon Simple Queue Service API
-
GetQueueUrlna Referência da Amazon Simple Queue Service API
-
ListQueuesna Referência da Amazon Simple Queue Service API
-
DeleteQueuena Referência da Amazon Simple Queue Service API