Version AWS SDK für Java 1.x wurde am 31. Juli 2024 in den Wartungsmodus versetzt und wird end-of-support
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.
Mit Amazon SQS Nachrichtenwarteschlangen arbeiten
Eine Nachrichtenwarteschlange ist der logische Container, in den Nachrichten zuverlässig gesendet werden Amazon SQS. Es gibt zwei Arten von Warteschlangen: Standard und First-in-First-out-Verfahren (FIFO). Weitere Informationen zu Warteschlangen und den Unterschieden zwischen diesen Typen finden Sie im Amazon SQS Entwicklerhandbuch.
In diesem Thema wird beschrieben, wie Sie mithilfe von eine Amazon SQS Warteschlange erstellen, auflisten, löschen und deren URL abrufen. AWS SDK für Java
Erstellen einer Warteschlange
Verwenden Sie die createQueue
Methode des AmazonSQS-Clients und stellen Sie ein CreateQueueRequestObjekt bereit, das die Warteschlangenparameter 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());
Das vollständige Beispiel
Auflisten von Warteschlangen
Rufen Sie die Methode des AmazonSQS-Clients auf, um die Amazon SQS Warteschlangen für Ihr Konto aufzulisten. listQueues
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); }
Das vollständige
Abrufen der URL für eine Warteschlange
Rufen Sie die Methode des AmazonSQS-Clients auf. getQueueUrl
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();
Das vollständige Beispiel
Löschen einer Warteschlange
Geben Sie die URL der Warteschlange für die Methode des AmazonSQS-Clients andeleteQueue
.
Importe
import com.amazonaws.services.sqs.AmazonSQS; import com.amazonaws.services.sqs.AmazonSQSClientBuilder;
Code
AmazonSQS sqs = AmazonSQSClientBuilder.defaultClient(); sqs.deleteQueue(queue_url);
Das vollständige Beispiel
Weitere Infos
-
So funktionieren Amazon SQS Warteschlangen im Amazon SQS Entwicklerhandbuch
-
CreateQueuein der Amazon SQS API-Referenz
-
GetQueueUrlin der Amazon SQS API-Referenz
-
ListQueuesin der Amazon SQS API-Referenz
-
DeleteQueuesin der Amazon SQS API-Referenz