Wir haben die kommende Version end-of-support für AWS SDK for Java (v1) angekündigt
Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Arbeiten mitAmazon SQSNachrichtenwarteschlangen
Eine Nachrichtenwarteschlange ist der logische Container, der zum zuverlässigen Senden von Nachrichten in Amazon SQS genutzt wird. Es gibt zwei Arten von Warteschlangen: Standard und First-in-First-out-Verfahren (FIFO). Weitere Informationen zu Warteschlangen und die Unterschiede zwischen diesen Typen finden Sie in derAmazon SQSEntwicklerhandbuchaus.
In diesem Thema wird beschrieben, wie Sie Amazon SQS-Warteschlangen erstellen, auflisten, löschen und die URL einer Warteschlange mit AWS SDK for Java abrufen können.
Erstellen einer Warteschlange
Verwenden Sie die von AmazonSQS--ClientscreateQueue
Methode zur Verfügung stellt eineCreateQueueRequest-Objekt, das die Parameter der Warteschlange beschreibt.
Importe
import com.amazonaws.services.sqs.AmazonSQS; import com.amazonaws.services.sqs.AmazonSQSClientBuilder; import com.amazonaws.services.sqs.model.AmazonSQSException; import com.amazonaws.services.sqs.model.CreateQueueRequest;
Code
AmazonSQS sqs = AmazonSQSClientBuilder.defaultClient(); CreateQueueRequest create_request = new CreateQueueRequest(QUEUE_NAME) .addAttributesEntry("DelaySeconds", "60") .addAttributesEntry("MessageRetentionPeriod", "86400"); try { sqs.createQueue(create_request); } catch (AmazonSQSException e) { if (!e.getErrorCode().equals("QueueAlreadyExists")) { throw e; } }
Sie können die vereinfachte Form von createQueue
verwenden, die nur einen Namen für die Warteschlange benötigt, um eine Standard-Warteschlange zu erstellen.
sqs.createQueue("MyQueue" + new Date().getTime());
Auf GitHub finden Sie ein vollständiges Beispiel
Auflisten von Warteschlangen
Listet dieAmazon SQS-Warteschlangen für Ihr Konto, rufen Sie den AmazonSQS-Kunden anlistQueues
-Methode.
Importe
import com.amazonaws.services.sqs.AmazonSQS; import com.amazonaws.services.sqs.AmazonSQSClientBuilder; import com.amazonaws.services.sqs.model.ListQueuesResult;
Code
AmazonSQS sqs = AmazonSQSClientBuilder.defaultClient(); ListQueuesResult lq_result = sqs.listQueues(); System.out.println("Your SQS Queue URLs:"); for (String url : lq_result.getQueueUrls()) { System.out.println(url); }
Wenn Sie die listQueues
-Überladung ohne Parameter aufrufen, werden alle Warteschlangen zurückgegeben. Sie können die zurückgegebenen Ergebnisse filtern, indem Sie ein ListQueuesRequest
-Objekt übergeben.
Importe
import com.amazonaws.services.sqs.AmazonSQS; import com.amazonaws.services.sqs.AmazonSQSClientBuilder; import com.amazonaws.services.sqs.model.ListQueuesRequest;
Code
AmazonSQS sqs = AmazonSQSClientBuilder.defaultClient(); String name_prefix = "Queue"; lq_result = sqs.listQueues(new ListQueuesRequest(name_prefix)); System.out.println("Queue URLs with prefix: " + name_prefix); for (String url : lq_result.getQueueUrls()) { System.out.println(url); }
Auf GitHub finden Sie ein vollständiges Beispiel
Abrufen der URL für eine Warteschlange
Rufen Sie den AmazonSQS--Clients angetQueueUrl
-Methode.
Importe
import com.amazonaws.services.sqs.AmazonSQS; import com.amazonaws.services.sqs.AmazonSQSClientBuilder;
Code
AmazonSQS sqs = AmazonSQSClientBuilder.defaultClient(); String queue_url = sqs.getQueueUrl(QUEUE_NAME).getQueueUrl();
Auf GitHub finden Sie ein vollständiges Beispiel
Löschen einer Warteschlange
Stellen Sie die der Warteschlangen bereitURLzu den AmazonSQS-KundendeleteQueue
-Methode.
Importe
import com.amazonaws.services.sqs.AmazonSQS; import com.amazonaws.services.sqs.AmazonSQSClientBuilder;
Code
AmazonSQS sqs = AmazonSQSClientBuilder.defaultClient(); sqs.deleteQueue(queue_url);
Auf GitHub finden Sie ein vollständiges Beispiel
Weitere Infos
-
WieAmazon SQSArbeiten von -WarteschlangenimAmazon SQSEntwicklerhandbuch
-
CreateQueueimAmazon SQS-API-Referenz
-
GetQueueUrlimAmazon SQS-API-Referenz
-
ListQueuesimAmazon SQS-API-Referenz
-
DeleteQueuesimAmazon SQS-API-Referenz