View a markdown version of this page

Amazon SQS-Nachrichtenkontingente - Amazon Simple Queue Service

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.

Amazon SQS-Nachrichtenkontingente

In der folgenden Tabelle werden die Kontingente im Zusammenhang mit Nachrichten aufgeführt.

Kontingent Description
Mitteilungs-ID im Stapel Eine Stapel-Nachrichten-ID kann bis zu 80 Zeichen lang sein. Folgende Zeichen sind zulässig: alphanumerische Zeichen, Bindestriche (-) und Unterstriche (_).
Nachrichtenattribute Eine Nachricht kann bis zu 10 Metadatenattribute enthalten.
Nachrichtenstapel

Eine einzelne Nachrichtstapelanforderung kann maximal 10 Nachrichten umfassen. Weitere Informationen finden Sie unter Amazon konfigurieren SQSBuffered AsyncClient im Abschnitt Amazon-SQS-Stapelaktionen.

Nachrichteninhalt

Eine Nachricht kann nur XML, JSON und unformatierten Text enthalten. Die folgenden Unicode-Zeichen sind zulässig: #x9 | #xA | #xD | #x20 bis #xD7FF | #xE000 bis #xFFFD | #x10000 to #x10FFFF

Alle Zeichen, die nicht in diese Liste enthalten sind, werden abgelehnt. Weitere Informationen finden Sie in der W3C-Spezifikation für Zeichen.

Nachrichtengruppen-ID

MessageGroupId ist für FIFO-Warteschlangen erforderlich. Wenn Sie MessageGroupId beim Senden einer Nachricht an eine FIFO-Warteschlange keine angeben, schlägt die Aktion fehl. In Standardwarteschlangen MessageGroupId ermöglicht die Verwendung fairer Warteschlangen. Wir empfehlen, eine MessageGroupId in alle Nachrichten aufzunehmen, wenn Sie faire Warteschlangen verwenden.

Die maximale Länge der MessageGroupId ist 128 Zeichen. Gültige Werte: alphanumerische Zeichen und Satzzeichen (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~).

Nachrichtenspeicherung Standardmäßig wird eine Nachricht 4 Tage aufbewahrt. Die Mindestdauer 60 Sekunden (1 Minute). Die Höchstdauer ist 1 209 600 Sekunden (14 Tage).
Nachrichtendurchsatz

Standard-Warteschlangen

Standardwarteschlangen unterstützen eine sehr hohe, nahezu unbegrenzte Anzahl von API-Aufrufen pro Sekunde und Aktion (SendMessageReceiveMessage, oder DeleteMessage). Aufgrund dieses hohen Durchsatzes eignen sie sich ideal für Anwendungsfälle, in denen große Nachrichtenmengen schnell verarbeitet werden müssen, wie z. B. Datenstreaming in Echtzeit oder umfangreiche Anwendungen. Standardwarteschlangen werden zwar automatisch mit der Nachfrage skaliert, aber es ist wichtig, die Nutzungsmuster zu überwachen, um eine optimale Leistung zu gewährleisten, insbesondere in Regionen mit höherer Arbeitslast.

FIFO-Warteschlangen

  • Jede Partition in einer FIFO-Warteschlange ist auf 300 Transaktionen pro Sekunde pro API-Aktion (SendMessageReceiveMessage, und) begrenzt. DeleteMessage Dieses Limit gilt speziell für den Modus ohne hohen Durchsatz. Wenn Sie in den Modus mit hohem Durchsatz wechseln, können Sie dieses Standardlimit überschreiten. Informationen zum Aktivieren des Hochdurchsatzmodus finden Sie unter. Aktivierung eines hohen Durchsatzes für FIFO-Warteschlangen in Amazon SQS

  • Wenn Sie Batching verwenden, unterstützen FIFO-Warteschlangen ohne hohen Durchsatz bis zu 3.000 Nachrichten pro Sekunde pro API-Aktion (SendMessage, und). ReceiveMessage DeleteMessage Die 3 000 Transaktionen pro Sekunde repräsentieren 300 API-Aufrufe mit jeweils einem Stapel von 10 Nachrichten.

Hoher Durchsatz für FIFO-Warteschlangen

Die Amazon SQS-FIFO-Limits basieren auf der Anzahl der API-Anfragen, nicht auf Nachrichtenlimits. Für den Modus mit hohem Durchsatz lauten diese API-Anforderungslimits wie folgt:

Grenzwerte für den Transaktionsdurchsatz (Non-batching API-Aufrufe)

Diese Grenzwerte definieren, wie oft jeder API-Vorgang (wie SendMessage ReceiveMessage, oder DeleteMessage) unabhängig voneinander ausgeführt werden kann, um eine effiziente Systemleistung innerhalb der zulässigen Transaktionen pro Sekunde (TPS) sicherzustellen.

Die folgenden Grenzwerte basieren auf API-Aufrufen, die nicht gebündelt sind:

  • USA Ost (Nord-Virginia), USA West (Oregon) und Europa (Irland): Bis zu 70.000 Transaktionen pro Sekunde (TPS).

  • USA Ost (Ohio) und Europa (Frankfurt): Bis zu 19.000 TPS.

  • Asien-Pazifik (Mumbai), Asien-Pazifik (Singapur), Asien-Pazifik (Sydney), Asien-Pazifik (Tokio) und Europa (Spanien): Bis zu 9.000 TPS.

  • Europa (London) und Südamerika (São Paulo): Bis zu 4.500 TPS.

  • Alle anderen AWS-Regionen: Standarddurchsatz von 2.400 TPS.

Maximierung des Durchsatzes durch Batching

Verarbeitet mehrere Nachrichten in einem einzigen API-Aufruf, was die Effizienz erheblich erhöht. Anstatt jede Nachricht einzeln zu behandeln, können Sie mit der Stapelverarbeitung bis zu 10 Nachrichten in einer einzigen API-Anfrage senden, empfangen oder löschen. Dadurch wird die Gesamtzahl der API-Aufrufe reduziert, sodass Sie mehr Nachrichten pro Sekunde verarbeiten und gleichzeitig die Transaktionslimits (TPS) für die Region einhalten können, wodurch der Durchsatz und die Systemleistung maximiert werden. Weitere Informationen finden Sie unter Steigerung des Durchsatzes durch horizontale Skalierung und Action-Batching mit Amazon SQS.

Die folgenden Grenzwerte basieren auf gebündelten API-Aufrufen:

  • USA Ost (Nord-Virginia), USA West (Oregon) und Europa (Irland): Bis zu 700.000 Nachrichten pro Sekunde (das 10-fache des Grenzwerts von 70.000 TPS ohne Batch).

  • USA Ost (Ohio) und Europa (Frankfurt): Bis zu 190.000 Nachrichten pro Sekunde.

  • Asien-Pazifik (Mumbai), Asien-Pazifik (Singapur), Asien-Pazifik (Sydney), Asien-Pazifik (Tokio) und Europa (Spanien): Bis zu 90.000 Nachrichten pro Sekunde.

  • Europa (London) und Südamerika (São Paulo): Bis zu 45.000 Nachrichten pro Sekunde.

  • Alle anderen AWS-Regionen: Bis zu 24.000 Nachrichten pro Sekunde.

Optimierung des Durchsatzes über die Stapelverarbeitung hinaus

Batching kann zwar den Durchsatz erheblich erhöhen, es ist jedoch wichtig, andere Strategien zur Optimierung der FIFO-Leistung in Betracht zu ziehen:

  • Nachrichten auf mehrere Nachrichtengruppen-IDs verteilen — Da Nachrichten innerhalb einer einzelnen Gruppe sequentiell verarbeitet werden, ermöglicht die Verteilung Ihrer Arbeitslast auf mehrere Nachrichtengruppen eine bessere Parallelität und einen höheren Gesamtdurchsatz. Weitere Informationen finden Sie unter Partitionen und Datenverteilung für hohen Durchsatz für SQS-FIFO-Warteschlangen.

  • Effizienter Einsatz von API-Aufrufen — Minimieren Sie unnötige API-Aufrufe, wie z. B. häufige Änderungen der Sichtbarkeit oder wiederholtes Löschen von Nachrichten, um die Nutzung Ihrer verfügbaren TPS zu optimieren und die Effizienz zu verbessern.

  • Verwenden Sie lange Umfrageeingänge — Nutzen Sie lange Abfragen, indem Sie WaitTimeSeconds in Ihren Empfangsanfragen festlegen, dass leere Antworten reduziert werden, wenn keine Nachrichten verfügbar sind. So reduzieren Sie unnötige API-Aufrufe und nutzen Sie Ihr TPS-Kontingent besser aus.

  • Erhöhung des Durchsatzes anfordern — Wenn für Ihre Anwendung ein Durchsatz erforderlich ist, der über den Standardgrenzwerten liegt, fordern Sie über die Service Quota-Konsole eine Erhöhung an. Dies kann für Workloads mit hoher Nachfrage oder in Regionen mit niedrigeren Standardgrenzwerten erforderlich sein. Informationen zum Aktivieren des Modus mit hohem Durchsatz finden Sie unter. Aktivierung eines hohen Durchsatzes für FIFO-Warteschlangen in Amazon SQS

Nachrichten-Timer Die Standardverzögerung (Mindestverzögerung) für eine Nachricht beträgt 0 Sekunden. Der Maximalwert beträgt 15 Minuten.
Nachrichtengröße

Die Mindestnachrichtengröße ist 1 Byte (1 Zeichen). Das Maximum liegt bei 1.048.576 Byte (1 MiB).

Um Nachrichten zu senden, die größer als 1 MiB sind, können Sie die Amazon SQS Extended Client Library für Java und die Amazon SQS Extended Client Library für Python verwenden. Diese Bibliothek erlaubt das Senden einer Amazon-SQS-Nachricht, die auf eine Nachrichtennutzlast in Amazon S3 verweist. Die maximale Nutzlastgröße beträgt 2 GB.

Anmerkung

Diese erweiterte Bibliothek funktioniert nur für synchrone Clients.

Zeitbeschränkung für die Sichtbarkeit von Nachrichten Die Standardzeitbeschränkung für die Sichtbarkeit einer Nachricht ist 30 Sekunden. Der Mindestwert beträgt 0 Sekunden. Der Höchstwert beträgt 12 Stunden.
Richtlinieninformationen Das Höchstkontingent beträgt 8 192 Byte, 20 Anweisungen, 50 Prinzipale oder 10 Bedingungen. Weitere Informationen finden Sie unter Amazon SQS SQS-Richtlinienkontingente.