F: Was ist Amazon SQS?

Amazon Simple Queue Service (Amazon SQS) bietet eine zuverlässige, hochgradig skalierbare, gehostete Warteschlange zum Speichern von Mitteilungen, während diese zwischen Computern weitergeleitet werden. Mit Amazon SQS können Entwickler auf einfache Weise Daten zwischen verteilten Anwendungskomponenten, die verschiedene Aufgaben ausführen, verschieben. Dabei gehen keine Mitteilungen verloren und es muss nicht jede Komponente stets verfügbar sein. Amazon SQS vereinfacht das Erstellen einer verteilten, entkoppelten Anwendung und arbeitet eng mit Amazon Elastic Compute Cloud (Amazon EC2) und den anderen AWS-Infrastruktur-Web-Services zusammen.

Kostenlos bei AWS einsteigen

Kostenloses Konto erstellen
Oder bei der Konsole anmelden

Das kostenlose Kontingent für AWS umfasst eine Nutzung von Cache-Knoten vom Typ "Micro" von 750 Stunden in Amazon ElastiCache.

Details zum kostenlosen Kontingent für AWS anzeigen »

F: Was kann ich mit Amazon SQS tun?

Mit dem Web-Service Amazon SQS haben Sie Zugriff auf eine Warteschlange, mit der Mitteilungen gespeichert werden können, die auf die weitere Bearbeitung durch einen Computer warten. Damit können Sie schnell Anwendungen für Mitteilungswarteschlangen erstellen, die auf jedem mit dem Internet verbundenen Computer ausgeführt werden können. Da Amazon SQS hochgradig skalierbar ist und leistungsbasiert bezahlt wird, können Sie klein anfangen und Ihre Anwendung nach Bedarf erweitern, ohne Kompromisse in Bezug auf die Leistung und die Zuverlässigkeit eingehen zu müssen. So können Sie sich ganz auf die Erstellung einer hochentwickelten mitteilungsbasierten Anwendung konzentrieren, ohne sich Gedanken über die Speicherung und Verwaltung der Mitteilungen machen zu müssen. Sie können Amazon SQS ganz unterschiedlich mit verschiedenen Softwareanwendungen verwenden. Beispielsweise können Sie:

  • Amazon SQS in andere AWS-Infrastruktur-Web-Services integrieren, um Anwendungen zuverlässiger und flexibler zu gestalten.
  • Amazon SQS verwenden, um Warteschlange mit Arbeitselementen zu erstellen, in der jede Mitteilung eine Aufgabe darstellt, die durch einen Vorgang erledigt werden muss. Ein oder mehrere Computer können die Aufgaben der Warteschlange sehen und sie durchführen.
  • Eine Mikrodienstarchitektur erstellen, indem Sie die Mikrodienste mit Warteschlangen verbinden.
  • Mitteilungen zu wichtigen Ereignissen in einem Geschäftsprozess in einer Amazon SQS-Warteschlange aufbewahren. Zu jedem Ereignis kann es eine entsprechende Nachricht in einer Warteschlange geben. Anwendungen, für die das Ereignis von Relevanz ist, können die Nachrichten abrufen und verarbeiten.

F: Was sind die ersten Schritte mit Amazon SQS?

Um diesen Service zu nutzen, benötigen Sie ein Amazon Web Services-Konto.  Besuchen Sie nach der Anmeldung die AWS Management Console oder durchsuchen Sie die Dokumentation von Amazon SQS sowie den Beispiel-Code im Ressourcencenter, um weitere Informationen zur Verwendung von Amazon SQS zu erhalten.

F: Was sind die Vorteile von Amazon SQS gegenüber eigenen oder in Paketen enthaltenen Warteschlangensystemen?

Die Verwendung von Amazon SQS bietet zahlreiche Vorteile gegenüber der Entwicklung eigener Software für die Verwaltung von Warteschlangen oder gegenüber der Verwendung kommerzieller Open-Source-Warteschlangensysteme für Mitteilungen. Denn diese beiden Alternativen erfordern einen erheblichen anfänglichen Zeitaufwand für die Entwicklung und Konfiguration im Vergleich zur einfachen Integration eines bestehenden Web-Service. Sie benötigen außerdem langfristig administrative Ressourcen für den Betrieb der Hardware und des Systems. Die Komplexität der Konfiguration und Verwaltung dieser Systeme erhöht sich, wenn sie so konfiguriert werden müssen, dass sie eine redundante Speicherung der Mitteilungen sicherstellen, damit diese bei Hardware-Ausfällen nicht verloren gehen. Im Gegensatz dazu ist bei Amazon SQS kein administrativer Aufwand und nur eine geringfügige Konfiguration erforderlich.  Zudem bietet Amazon SQS eine umfassende Skalierung und verarbeitet mehrere Milliarden Nachrichten pro Tag.  Sie können den Datenverkehr, der an SQS gesendet wird, ohne Konfigurationen oder Verwaltungsaufwand skalieren.  Außerdem bietet Amazon SQS eine extrem hohe Nachrichtenbeständigkeit, die Ihnen und Ihren Stakeholdern zusätzliche Sicherheit bietet.

F: Wann sollte ich Amazon Simple Workflow (SWF) und wann Amazon SQS verwenden?

Sowohl Amazon SWF als auch Amazon SQS können für die Entwicklung verteilter, entkoppelter Anwendungen verwendet werden.  Amazon SWF stellt eine Infrastruktur bereit, die für die Koordinierung von Tasks beim Erstellen hochgradig skalierbarer und überwachbarer Anwendungen bestimmt ist. Amazon SQS hingegen stellt eine zuverlässige, hochgradig skalierbare, gehostete Warteschlange zum Speichern von Nachrichten bereit. Während Sie Amazon SQS zum Erstellen der für die Implementierung Ihrer verteilten Anwendung erforderlichen Messaging-Unterstützung verwenden können, erhalten Sie diese Fähigkeit bei Amazon SWF standardmäßig zusammen mit anderen Funktionen auf Anwendungsebene. Machen Sie sich mit Amazon SQS und mit Amazon SWF vertraut, um entscheiden zu können, welche Lösung Ihren Anforderungen entspricht.

F: Nutzt Amazon für seine eigenen Anwendungen auch Amazon SQS?

Ja. Die Entwickler von Amazon verwenden Amazon SQS für unterschiedliche Projekte und für eine große Anzahl von täglichen Amazon SQS-Mitteilungen. Zu den Anwendungen, die Amazon SQS verwenden, zählen die wichtigsten Geschäftsprozesse für die Website von Amazon.de und Amazon Web Services.



F: Was kann ich mit dem kostenlosen Kontingent für Amazon SQS tun?

Im kostenlosen Kontingent für Amazon SQS sind 1 Mio. Anforderungen pro Monat kostenlos enthalten. Viele kleinere Anwendungen können eventuell komplett innerhalb der Grenzen dieses Gratisangebots betrieben werden. Es können trotzdem Gebühren für die Datenübertragung anfallen (siehe Preise). Das kostenlose Kontingent ist ein monatliches Angebot. Die kostenlose Nutzung ist nicht monatsübergreifend kumulierbar.

F: Wie viel kostet Amazon SQS?

Sie zahlen nur für das, was Sie auch tatsächlich nutzen. Dabei fallen keine Mindestgebühren an. Sie zahlen für je 1 Mio. Anforderungen 0,50 USD plus Übertragungskosten für Daten, die aus Amazon SQS übertragen werden. Weitere Informationen finden Sie auf der Amazon-Seite der SQS-Preise.

F: Kosten Amazon SQS-Stapelvorgänge mehr als andere Anforderungen?

Stapelvorgänge, darunter SendMessageBatch, DeleteMessageBatch und ChangeMessageVisibilityBatch, kosten genauso viel wie andere Amazon SQS-Anforderungen.  Durch die Gruppierung von Nachrichten in Stapel können Entwickler ihre Kosten senken.

F: Wie wird mir Amazon SQS in Rechnung gestellt?

Es gibt keine Einrichtungsgebühren für den Service. Nach Ende eines Monats wird Ihre Kreditkarte automatisch mit den Nutzungsgebühren für den betreffenden Monat belastet. Sie können die Gebühren für den aktuellen Abrechnungszeitraum jederzeit auf der Amazon Web Services-Website anzeigen. Melden Sie sich hierzu bei Ihrem Amazon Web Services-Konto an und klicken Sie unter "Your Web Services Account" auf "Account Activity".

F: Sind Steuern bereits in den Preisen enthalten?

Falls nicht anders angegeben, gelten unsere Preise zuzüglich geltender Steuern und Abgaben, darunter MwSt. und Umsatzsteuer. Bei Kunden mit japanischer Rechungsadresse unterliegt die Nutzung in jeder Region der japanischen Verbrauchssteuer. Weitere Informationen.


F: Kann Amazon SQS zusammen mit anderen AWS-Services verwendet werden?

Amazon SQS kann mit Datenverarbeitungsdiensten wie Amazon EC2, Amazon EC2 Container Service und AWS Lambda sowie mit Speicher- und Datenbankdiensten wie Amazon S3 und Amazon DynamoDB verwendet werden. Dies ermöglicht eine größere Flexibilität und Skalierbarkeit der Anwendungen. Ein üblicher Anwendungsfall ist das Erstellen einer verteilten, entkoppelten Anwendung, bei der mehrere Komponenten oder Module miteinander kommunizieren müssen, jedoch nicht alle dieselbe Menge Arbeit gleichzeitig verarbeiten können. In diesem Fall enthalten die Amazon SQS-Warteschlangen die Mitteilungen, die in geordneter Reihenfolge durch die auf Amazon EC2-Instanzen ausgeführte Anwendung des Nutzers verarbeitet werden sollen. Die Amazon EC2-Instances können die Warteschlange lesen, die Aufgabe verarbeiten und anschließend die Ergebnisse als Mitteilungen an eine andere Amazon SQS-Warteschlange weitergeben (etwa für die weitere Verarbeitung durch eine andere Anwendung). Da Amazon EC2 die dynamische Skalierung von Anwendungen nach oben und nach unten zulässt, können Anwendungsentwickler die Anzahl der Recheninstanzen einfach anhand der Arbeitsmenge in den SQS-Warteschlangen variieren, um sicherzustellen, dass Aufgaben in einem angemessenen Zeitraum ausgeführt werden.

Ein Beispiel: Eine Videoumschlüsselungs-Website verwendet Amazon EC2, Amazon SQS, Amazon S3 und Amazon DynamoDB gemeinsam. Endanwender übertragen Videos zur Umschlüsselung an die Website. Die Videos werden in Amazon S3 gespeichert und eine Mitteilung (die Anforderungsmitteilung) wird in einer Amazon-SQS-Warteschlange (die Eingangswarteschlange) mit einem Pointer auf das Video und auf das Zielformat des Videos in der Mitteilung abgelegt. Die auf einem Verbund aus Amazon EC2-Instances ausgeführte Umschlüsselungs-Engine liest die Anforderungsmitteilung aus der Eingangswarteschlange, ruft die Videos mithilfe des Pointers von Amazon S3 ab und schlüsselt das Video in das Zielformat um. Das konvertierte Video wird zurück in Amazon S3 abgelegt und eine andere Mitteilung (die Antwortmitteilung) wird in einer anderen Amazon SQS-Warteschlange (der Ausgangswarteschlange) mit einem Pointer auf das konvertierte Video platziert. Gleichzeitig können Metadaten zum Video (z. B. Format, Erstellungsdatum und Länge) zur leichten Abfragedurchführung in Amazon DynamoDB indiziert werden. Während dieses ganzen Ablaufs kann eine dedizierte Amazon EC2-Instance durchgängig die Eingangswarteschlange überwachen und, basierend auf der Anzahl der Mitteilungen in der Eingangswarteschlange, die Anzahl der umschlüsselnden Amazon EC2-Instances dynamisch anpassen, um den Kundenanforderungen bezüglich der Reaktionszeit gerecht zu werden.

F: Über welche Schnittstelle kann ich auf Amazon SQS zugreifen?

Amazon SQS bietet benutzerfreundliche APIs, die mit jedem beliebigen Toolkit für die Internetentwicklung kompatibel sind. Die Vorgänge sind für die Arbeit mit Mitteilungen und Warteschlangen bewusst einfach gehalten.

F: Welche Vorgänge sind für Warteschlangen verfügbar?

Die verfügbaren betrieblichen Abläufe sind auf der Seite Produktdetails aufgelistet.

F: Wer kann Vorgänge für eine Warteschlange durchführen?

Vorgänge können nur vom AWS-Kontoinhaber oder einem AWS-Konto ausgeführt werden, an das der Inhaber die Aufgabe delegiert hat.

F: Kann ich Java Message Service (JMS) mit Amazon SQS verwenden?

Ja.  Amazon bietet eine Client-Bibliothek, die die Implementierung der JMS 1.1-Spezifikationen unterstützt und Amazon SQS als JMS-Anbieter verwendet. Sie können sich auf den Umfang, die niedrigen Kosten und die hohe Verfügbarkeit von SQS verlassen und müssen sich keine Sorgen um den aufwendigen Betrieb eines eigenen JMS-Clusters machen.

F: Wie werden Mitteilungen im System erkannt?

Alle Mitteilungen verfügen über eine global eindeutige ID, die Amazon SQS wiedergibt, wenn die Mitteilung an die Warteschlange geliefert wird. Die ID ist für keine weiteren Vorgänge an der Mitteilung notwendig, aber sie ist nützlich, um herauszufinden, ob eine bestimmte Mitteilung in der Warteschlange empfangen wurde. Wenn Sie eine Mitteilung aus der Warteschlange empfangen, enthält die Antwort eine Empfangs-Mitteilung, die für die Löschung der Mitteilung benötigt wird.

F: Wie werden fehlgeschlagene Mitteilungen gehandhabt?

Amazon SQS bietet die Möglichkeit, Dead Letter Queues (DLQs, unzustellbare Warteschlangen) zu konfigurieren. Eine DLQ ist eine Warteschlange, die man so konfiguriert, dass sie Mitteilungen von anderen Warteschlangen – "Quellwarteschlangen" – empfängt. Sie richten eine solche Warteschlange für den Empfang von Nachrichten ein, nachdem die maximale Anzahl von Zustellungsversuchen erreicht wurde. Mit DLQs können nicht verarbeitete Mitteilungen isoliert und später analysiert werden.

Eine Warteschlange für unzustellbare Nachrichten unterscheidet sich nicht von anderen Warteschlangen. Es können Mitteilungen an sie gesendet und von ihr empfangen werden, genau wie bei anderen Warteschlangen. Sie erstellen eine Warteschlange für unzustellbare Nachrichten über die SQS-API oder die SQS-Konsole.

Weitere Informationen zum Erstellen und Nutzen von DLQs finden Sie im SQS Developer Guide.

 

F: Bietet Amazon SQS FIFO-Zugriff (First-in-First-out) auf Mitteilungen?

Amazon SQS versucht immer, die Reihenfolge der Mitteilungen beizubehalten. Doch aufgrund der Verteilung der Warteschlange können wir nicht garantieren, dass Sie die Mitteilungen in derselben Reihenfolge erhalten, in der Sie sie gesendet haben (FIFO). Wenn die Einhaltung der Reihenfolge für Ihr System erforderlich ist, empfehlen wir, dass Sie jede Nachricht mit Sequenzierungsdetails versehen. Dann können Sie die Nachrichten beim Empfang neu sortieren.

 

F: Bietet Amazon SQS die "mindestens einmalige" Zustellung von Mitteilungen?

Ja. Amazon SQS speichert aus Gründen der Redundanz und Hochverfügbarkeit Kopien der Mitteilungen auf mehreren Servern. In seltenen Fällen kann es vorkommen, dass einer der Server, auf dem eine Mitteilungskopie gespeichert ist, nicht verfügbar ist, wenn Sie eine Mitteilung erhalten oder löschen. Dann wird die Kopie dieser Mitteilung nicht von diesem nicht verfügbaren Server gelöscht. Deshalb ist es möglich, dass Sie beim Empfangen von Mitteilungen diese Mitteilung erneut erhalten. Dies wird "mindestens einmalige Zustellung" genannt.  Aus diesem Grund muss Ihre Anwendung idempotent sein (d. h., die mehrmalige Verarbeitung derselben Mitteilung darf die Anwendung nicht nachteilig beeinflussen).

 

F: Was ist die maximale Grenze für die Mitteilungssichtbarkeit?

Amazon SQS unterstützt eine maximale Sichtbarkeit für bis zu 12 Stunden.

F: Unterstützt SQS Metadaten für Nachrichten?

Ja. Amazon SQS lässt das Senden von bis 10 Attributen pro Nachricht zu. Mithilfe von Nachrichtenattributen können Sie den Text einer Nachricht von den Metadaten zu seiner Beschreibung trennen. Dadurch können Sie Informationen schneller und intelligenter verarbeiten und speichern, da Ihre Anwendungen nicht mehr die gesamte Nachricht untersuchen müssen, um die erforderlichen Verarbeitungsschritte zu bestimmen.

SQS-Nachrichtenattribute haben das Format "Name-Typ-Wert". Unterstützte Typen sind u. a.: String, Binary und Number (einschließlich Integer, Floating Point und Double).

In der SQS-Dokumentation finden Sie weitere Informationen.

F: Wie kann ein Entwickler die Wartezeit feststellen?

Entwickler können das Attribut "SentTimestamp" anfordern, wenn sie eine Mitteilung erhalten. Die Subtraktion dieses Wertes von der aktuellen Zeit ergibt den Wert der Wartezeit.

F: Was ist die typische Latenz für SQS?

Die typischen Latenzen für SendMessage-, ReceiveMessage- und DeleteMessage-API-Anforderungen liegen im Zehner- oder unteren Hunderterbereich von Millisekunden.

F: Was ist der "SenderId"-Attributwert einer Mitteilung im Falle eines anonymen Zugriffs?

Amazon SQS stellt die IP-Adresse zur Verfügung, wenn die AWS-Konto-ID nicht sichtbar ist, beispielsweise, wenn ein anonymer Benutzer eine Mitteilung sendet.

F: Was ist eine SQS-Langabfrage?

Die SQS-Langabfrage ist eine Möglichkeit zum Abrufen von Nachrichten aus Ihren SQS-Warteschlangen. Während die normale SQS-Kurzabfrage sofort eine Rückgabe liefert, auch wenn die abgefragte Warteschlange leer ist, gibt die SQS-Langabfrage erst dann eine Antwort zurück, wenn eine Nachricht in die Warteschlange eingeht oder die Zeitbeschränkung der Langabfrage überschritten wird. Die SQS-Langabfrage ermöglicht das kostengünstige Abrufen von Nachrichten aus Ihrer SQS-Warteschlange, sobald diese verfügbar sind.  Die Verwendung von Langabfragen kann zur Reduzierung der SQS-Kosten beitragen, da Sie die Anzahl der leeren Empfangsvorgänge minimieren können.

F: Fallen für das Verwenden der SQS-Langabfrage weitere Gebühren an?

Aufrufe der "ReceiveMessage"-API mit Langabfrage werden genauso in Rechnung gestellt wie Aufrufe der "ReceiveMessage"-API mit Kurzabfrage.

F: Wann sollte ich die SQS-Langabfrage und wann die SQS-Kurzabfrage wählen?

In den meisten Fällen ist die SQS-Langabfrage im Vergleich zur SQS-Kurzabfrage die bessere Wahl. Bei Anforderungen von Langabfragen erhalten Warteschlangennutzer Nachrichten, sobald diese in Ihre Warteschlange eingehen, wobei die Anzahl leerer "ReceiveMessageResponses"-Antworten verringert wird. In Kombination führt die SQS-Langabfrage bei den meisten Anwendungsfällen zu einer höheren Leistung bei geringeren Kosten. Wenn Ihre Anwendung jedoch so codiert ist, dass eine sofortige Antwort auf einen Aufruf von "ReceiveMessage" erwartet wird, können Sie ggf. nicht mit der Langabfrage arbeiten, ohne zuvor die Anwendung zu ändern. Wenn Ihre Anwendung beispielsweise über einen einzelnen Thread zum Abfragen mehrerer Warteschlangen verfügt, funktioniert der Wechsel von der Kurz- zur Langabfrage ggf. nicht. Der Grund ist, dass der einzelne Thread bei leeren Warteschlangen die Zeitbeschränkung der Langabfrage abwartet, wodurch die Verarbeitung von Warteschlangen verzögert wird, die ggf. Nachrichten enthalten. Bei einer solchen Anwendung wird empfohlen, dass ein einzelner Thread nur eine Warteschlange verarbeitet, damit die Anwendung in den Genuss der Vorteile von SQS-Langabfragen kommen kann.

F: Welchen Wert sollte ich für die Zeitbeschränkung der Langabfrage wählen?

Im Allgemeinen sollte die maximale Zeitbeschränkung für Langabfragen (20 Sekunden) verwendet werden. Durch höhere Zeitbeschränkungswerte für die Langabfrage wird die Anzahl zurückgegebener leerer "ReceiveMessageResponses"-Antworten verringert. Legen Sie deshalb den Zeitbeschränkungswert für die Langabfrage so hoch wie möglich fest. Wenn sich der Maximalwert von 20 Sekunden für Ihre Anwendung nicht eignet (siehe das Beispiel in der vorigen Frage), können Sie einen kürzeren Zeitbeschränkungswert für die Langabfrage wählen (der Mindestwert ist 1 Sekunde). Alle AWS SDKs arbeiten standardmäßig mit 20-sekündigen Langabfragen. Wenn Sie AWS SDK für den Zugriff auf SQS verwenden oder Ihr AWS SDK mit einem kürzeren Zeitbeschränkungswert konfiguriert haben, müssen Sie ggf. den SQS-Client so ändern, dass längere Anforderungen zulässig sind, oder einen kürzeren Zeitbeschränkungswert für die Langabfrage wählen.

F: Was ist der AmazonSQSBufferedAsync-Client?

Der AmazonSQSBufferedAsync-Client bietet eine Implementierung der AmazonSQSAsync-Client-Schnittstelle, die mehrere wichtige Funktionen hinzufügt. Zunächst unterstützt der AmazonSQSBufferedAsync-Client die automatische Stapelverarbeitung mehrerer Anforderungen von Typ "SendMessage", "DeleteMessage" oder "ChangeMessageVisibility" in Stapeln des jeweiligen Typs, ohne dass die Anwendung geändert werden muss. Darüber hinaus unterstützt der AmazonSQSBufferedAsync-Client den Vorabruf von Nachrichten in einen lokalen Puffer, was Ihrer Anwendung die sofortige Verarbeitung von Nachrichten aus SQS ermöglicht, ohne deren Abruf aus SQS abwarten zu müssen. Durch die Kombination aus automatischer Stapelverarbeitung und Vorabruf werden der Durchsatz gesteigert und die Latenz Ihrer Anwendung verkürzt und durch das Stellen weniger SQS-Anforderungen die Kosten gesenkt.

F: Wie wird der AmazonSQSBufferedAsync-Client heruntergeladen?

Sie können den AmazonSQSBufferedAsync-Client als Teil des AWS-SDK für Java unter http://aws.amazon.com/sdkforjava/ herunterladen.

F: Welche Sprachen unterstützt der AmazonSQSBufferedAsync-Client?

Derzeit wird der AmazonSQSBufferedAsync-Client nur von Java unterstützt.

F: Muss ich meine Anwendung umcodieren, um den AmazonSQSBufferedAsync-Client verwenden zu können?

Nein, der AmazonSQSBufferedAsync-Client wird im Austausch mit dem vorhandenen AmazonSQSAsync-Clients implementiert. Sie können Ihre Anwendung so ändern, dass das neueste AWS SDK verwendet wird, und die Client-Konfiguration so ändern, dass der AmazonSQSBufferedAsync-Client anstelle des AmazonSQSAsync-Clients verwendet wird, damit Ihre Anwendung in den Genuss von automatischer Stapelverarbeitung und Vorabruf kommt.

F: Wie kann ich SQS-Warteschlangen so abonnieren, dass Benachrichtigungen von SNS-Themen empfangen werden?

Wählen Sie in der SQS-Konsole die SQS-Warteschlange aus, klicken Sie auf der Menüleiste auf "Queue Actions", und wählen Sie in der Dropdown-Liste "Subscribe Queue to SNS Topic" aus. Wählen Sie im Dialogfeld für das Abonnement das Thema in der Dropdown-Liste "Choose a Topic" aus, und klicken Sie auf die Schaltfläche "Subscribe". Umfassende schrittweise Anleitungen finden Sie in der Amazon SQS-Dokumentation.

F: Wie kann ich identische Nachrichten in mehreren SQS-Warteschlangen verbreiten?

Erstellen Sie zunächst in SNS ein SNS-Thema. Erstellen Sie anschließend mehrere SQS-Warteschlangen, und lassen Sie diese das SNS-Thema abonnieren. Wird nun eine Nachricht an das SNS-Thema gesendet, wird die Nachricht an die SQS-Warteschlangen verbreitet, d. h. SNS übermittelt die Nachricht an alle SQS-Warteschlangen, die das Thema abonniert haben.

F: Kann ich alle Nachrichten in einer Warteschlange löschen, ohne die Warteschlange selbst zu löschen?

Ja. Mit der Aktion PurgeQueue können alle Nachrichten in einer SQS-Warteschlange gelöscht werden. Wenn Sie eine Warteschlange leeren, werden alle bis dahin an die Warteschlange gesendeten Nachrichten gelöscht. Da die Warteschlange selbst mit ihren Attributen bestehen bleibt, ist es nicht nötig, sie für die Weiterverwendung erneut zu konfigurieren. Wenn Sie bestimmte Nachrichten löschen müssen, können Sie die Aktionen DeleteMessage oder DeleteMessageBatch verwenden.


F: Wie zuverlässig werden meine Daten in Amazon SQS gespeichert?

Amazon SQS speichert alle Warteschlangen- und Mitteilungsdaten im Amazon-Netzwerk aus hochsicheren und hochverfügbaren Rechenzentren. Alle Mitteilungen werden redundant auf mehreren Servern sowie in mehreren Rechenzentren gespeichert. Dies bedeutet, dass SQS-Mitteilungen auch im Falle von Computer- oder Netzwerkausfällen immer verfügbar sind.

F: Wie kann ich die Mitteilungen in meinen Warteschlangen sichern?

Authentifizierungsmechanismen sorgen dafür, dass in Amazon SQS gespeicherte Nachrichten vor unautorisiertem Zugriff geschützt sind. Sie können steuern, wer Mitteilungen an eine Warteschlange senden und Mitteilungen von einer Warteschlange empfangen darf.

Amazon SQS verfügt über ein eigenes ressourcenbasiertes Berechtigungssystem. Dieses verwendet Richtlinien, die in derselben Sprache wie AWS Identity and Access Management (IAM)-Richtlinien geschrieben sind. Das bedeutet, dass Sie mit Amazon SQS-Richtlinien dieselben Dinge wie mit IAM-Richtlinien erreichen können, beispielsweise die Nutzung von Variablen in IAM-Richtlinien. Weitere Informationen zur Verwendung finden Sie im Amazon SQS Developer Guide.

Für zusätzliche Sicherheit können Sie Ihre Anwendung so konzipieren, dass sie Mitteilungen verschlüsselt, bevor diese in der Warteschlange platziert werden.

F: Wie ermöglicht Amazon SQS mehreren Lesern den Zugriff auf dieselbe Mitteilungswarteschlange, ohne dass Mitteilungen verloren gehen oder mehrmals verarbeitet werden?

Jede Amazon SQS-Warteschlange verfügt über eine konfigurierbare Sichtbarkeitsunterbrechung. Für eine bestimmte Zeit, nachdem eine Mitteilung aus der Warteschlange gelesen wurde, ist diese für andere Leser nicht sichtbar. Solange die Bearbeitungszeit kürzer als die Sichtbarkeitsunterbrechung ist, wir jede Mitteilung verarbeitet und gelöscht. Sollte die Komponente, mit der die Mitteilung verarbeitet wird, ausfallen oder unverfügbar werden, wird die Mitteilung nach Ablauf der Sichtbarkeitsunterbrechung für jeden Leser wieder sichtbar. Dies ermöglicht verschiedenen Komponenten das Lesen von Mitteilungen aus derselben Warteschlange, wobei jedoch jede Komponente eine andere Mitteilung verarbeitet.

F: Wieso gibt es mehrere "ReceiveMessage"- und "DeleteMessage"-Vorgänge?

Wenn Amazon SQS eine Mitteilung an Sie zurücksendet, bleibt diese Mitteilung in der Warteschlange, ganz gleich, ob Sie diese Mitteilung erhalten haben oder nicht. Sie sind dafür verantwortlich, die Mitteilung zu löschen. Durch die Löschanforderung bestätigen Sie, dass Sie mit der Verarbeitung der Mitteilung fertig sind. Wenn Sie die Mitteilung nicht löschen, sendet sie Amazon SQS bei der nächsten Anforderung erneut.  Weitere Informationen erhalten Sie unter "Zeitbeschränkung für die Sichtbarkeit" im Amazon SQS Developer Guide.

F: Kann eine gelöschte Mitteilung erneut empfangen werden?

Ja, in seltenen Fällen erhalten Sie unter Umständen eine gelöschte Mitteilung erneut. Dies kann der Fall sein, wenn ein "DeleteMessage"-Vorgang nicht alle Kopien der Mitteilung löscht, weil ein Server des verteilten Amazon-SQS-Systems zum Zeitpunkt des Löschvorgangs nicht verfügbar war Diese Kopie der Mitteilung wird dann eventuell erneut versendet. Sie sollten Ihre Anwendung so einrichten, dass beim Empfang einer gelöschten Mitteilung keine Fehler oder Inkonsistenzen auftreten.

F: Was passiert, wenn ich eine "DeleteMessage"-Anforderung für eine bereits gelöschte Mitteilung stellen möchte?

SQS sendet eine Erfolgsmeldung zurück.


F: Ist Amazon SQS PCI DSS zertifiziert?

Amazon SQS verfügt über eine PCI DSS-Zertifizierung (Level 1). Weitere Informationen finden Sie unter http://aws.amazon.com/compliance/pci-dss-level-1-faqs.

F: Ist Amazon SQS HIPAA-konform?

Amazon SQS ist nicht für die Konformität mit HIPAA zertifiziert. Allerdings ist es möglich, SQS-Nutzdatennachrichten über S3 mittels der Extended Client Library zu senden.##  S3 ist HIPAA-konform.  Auf diese Weise lässt sich HIPAA-Konformität realisieren, da keine PII über SQS übertragen werden.


F: Wie lange kann ich meine Mitteilungen in den Warteschlangen von Amazon SQS aufbewahren?

Der Aufbewahrungszeitraum für Mitteilungen in SQS ist zwischen 1 Minute und 2 Wochen frei konfigurierbar. Standardmäßig ist ein Zeitraum von 4 Tagen eingestellt. Sobald der vorgegebene Zeitraum abgelaufen ist, werden Ihre Mitteilungen gelöscht. Dank der Option zur längeren Aufbewahrung von Mitteilungen können Sie flexibler bestimmen, wann Mitteilungen erstellt und wann sie genutzt werden.

F: Wie kann ich SQS so konfigurieren, dass Mitteilungen länger aufbewahrt werden?

Richten Sie das MessageRetentionPeriod-Attribut mithilfe der Management Console oder mithilfe der SetQueueAttributes-Methode ein, um den Aufbewahrungszeitraum für Mitteilungen zu konfigurieren. Mit diesem Attribut wird festgelegt, wie viele Sekunden eine Mitteilung von SQS aufbewahrt wird. Derzeit ist standardmäßig ein Zeitraum von 4 Tagen zur Aufbewahrung festgelegt. Über das Attribut „MessageRetentionPeriod“ kann ein beliebiger Aufbewahrungszeitraum zwischen 60 Sekunden (1 Minute) und 1.209.600 Sekunden (14 Tage) festgelegt werden. Weitere Informationen zum Arbeiten mit diesem Nachrichtenattribut finden Sie im Amazon SQS API-Referenzhandbuch.

F: Wie kann ich die maximale Nachrichtengröße für SQS konfigurieren?

Zum Konfigurieren der maximalen Mitteilungsgröße stellen Sie das Attribut "MaximumMessageSize" mithilfe der Management Console oder der "SetQueueAttributes"-Methode ein. Mit diesem Attribut wird festgelegt, welche Größe in Byte eine SQS-Mitteilung aufweisen darf. Sie können eine beliebige Größe zwischen 1 024 Byte (1 KB) und 262 144 Byte (256 KB) festlegen. Weitere Informationen zum Arbeiten mit diesem Nachrichtenattribut finden Sie im Amazon SQS API-Referenzhandbuch.

Um Nachrichten mit mehr als 256 KB zu senden, können Sie die Amazon SQS Extended Client Library for Java verwenden.  Diese Bibliothek ermöglicht das Senden einer Mitteilung in SQS, die eine Referenz bezüglich eines Mitteilungsinhalts in Amazon S3 enthält.  Der Mitteilungsinhalt in S3 kann bis zu 2 GB groß sein.

F: Wie viele und welche Art von Daten kann eine Mitteilung enthalten?

Amazon SQS-Nachrichten können bis zu 256 KB an Textdaten, darunter XML, JSON und unformatierten Text, enthalten. Die folgenden Unicode-Zeichen sind zugelassen:

#x9 | #xA | #xD | [#x20 bis #xD7FF] | [#xE000 bis #xFFFD] | [#x10000 bis #x10FFFF]

(gemäß http://www.w3.org/TR/REC-xml/#charsets).

F: Wie groß dürfen Warteschlangen von Amazon SQS sein?

Eine einzelne Warteschlange kann eine unbegrenzte Anzahl an Mitteilungen enthalten, und Sie können unbegrenzt viele Warteschlangen erstellen.

F: Gibt es Beschränkungen hinsichtlich der Benennung der Amazon SQS-Warteschlangen? Gibt es eine Längenbeschränkung für die Namen der Amazon SQS-Warteschlangen? Kann der Name einer Warteschlange erneut verwendet werden?

Die Namen von Warteschlangen sind auf 80 Zeichen beschränkt. Alphanumerische Zeichen sowie Bindestriche (-) und Unterstriche (_) sind zulässig. Innerhalb eines AWS-Kontos und einer Region müssen die Namen von Warteschlangen eindeutig sein. Nach dem Löschen einer Warteschlange kann ihr Name erneut verwendet werden.

F: Was passiert, wenn eine Warteschlange für einen längeren Zeitraum nicht aktiv ist?

Wir behalten uns das Recht vor, eine Warteschlange zu löschen, wenn für 30 aufeinanderfolgende Tage keine der folgenden Anforderungen übermittelt wurde: SendMessage, ReceiveMessage, DeleteMessage, GetQueueAttributes und SetQueueAttributes. Bitte berücksichtigen Sie dies bei der Konzeption Ihrer Anwendung. Hinweis: Warteschlangen, die als unzustellbare Warteschlangen verwendet werden, werden nicht gelöscht, solange noch eine der Quellwarteschlangen vorhanden ist.


F: Wie können mehrere Benutzer auf eine Warteschlange zugreifen?

Ein Entwickler ordnet der gemeinsam zu nutzenden Warteschlange eine Zugriffsrichtlinienerklärung zu (in der die Berechtigungen näher definiert sind). Amazon SQS stellt APIs zur Erstellung und Verwaltung der folgenden Zugriffsrichtlinienerklärungen bereit: AddPermission, RemovePermission, SetQueueAttributes und GetQueueAttributes. Siehe aktuelle API-Spezifizierung für weitere Details.

F: Wer zahlt für den gemeinsamen Warteschlangenzugriff?

Der Inhaber der Warteschlange bezahlt den gemeinsamen Warteschlangenzugriff.

F: Wie erkenne ich einen anderen AWS-Benutzer?

Die Amazon SQS-API verwendet die AWS-Kontonummer zur Identifizierung der AWS-Benutzer.

F: Was muss ich anderen Benutzern zur Verfügung stellen, damit ich gemeinsam mit ihnen auf eine Warteschlange zugreifen kann?

Sie müssen die gesamte URL der Warteschlange zur Verfügung stellen. Die Vorgänge CreateQueue und ListQueues geben diese URL in ihrer Antwort an.

F: Unterstützt Amazon SQS anonymen Zugriff?

Ja – ein Entwickler kann eine Zugriffsrichtlinie erstellen, die anonymen Benutzern den Zugriff auf eine Warteschlange erlaubt.

F: Wann sollte ich die Berechtigungs-API nutzen?

Die Berechtigungs-API bietet Entwicklern eine einfache Schnittstelle, um Benutzern den gleichzeitigen Zugang zur Warteschlange zu gewähren. Ein bedingter Zugang oder erweiterte Anwendungsfälle sind nicht möglich.

F: Wann sollte ich "SetQueueAttributes" mit JSON-Objekten verwenden?

Der "SetQueueAttributes"-Vorgang unterstützt die vollständige Zugriffsrichtliniensprache. Unter Verwendung der Richtliniensprache kann der Zugang zur Warteschlange beispielsweise nach IP-Adresse und Tageszeit eingegrenzt werden. Weitere Details finden Sie in der Dokumentation zur Zugriffsrichtlinie im aktuellen Entwicklerhandbuch.


F: In welchen AWS-Regionen ist Amazon SQS verfügbar?

Diese Informationen finden Sie in der Tabelle für globale Infrastrukturregionen von AWS.

F: Können Mitteilungen von Warteschlangen in verschiedenen Regionen gleichzeitig bearbeitet werden?

Nein. Amazon SQS ist in jeder Region in Bezug auf die Mitteilungsspeicher und Warteschlangennamen vollkommen unabhängig.

F: Gibt es zwischen den verschiedenen Regionen einen Preisunterschied?

Die Amazon SQS-Preise sind in allen Regionen gleich. Lediglich die Region Asien-Pazifik (Tokio) bildet eine Ausnahme von dieser Regel. Weitere Informationen erhalten Sie unter Preis.

F: Wie sieht die Preisgestaltung bei Übertragungen zwischen den verschiedenen Regionen aus?

Datenübertragungen zwischen Amazon SQS und Amazon EC2 innerhalb einer Region sind gebührenfrei. Datenübertragungen zwischen Amazon SQS und Amazon EC2 in verschiedenen Regionen werden nach den normalen Datenübertragungstarifen berechnet.