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.
Nachrichtenmetadaten für Amazon SQS
Verwenden Sie Nachrichtenattribute, um Amazon SQS-Nachrichten für Ihre Anwendungen benutzerdefinierte Metadaten hinzuzufügen. Verwenden Sie Nachrichtensystemattribute, um Metadaten für die Integration mit anderen zu speichern AWS-Services, z. B. AWS X-Ray
Amazon-SQS-Nachrichtenattribute
Amazon SQS ermöglicht es Ihnen, mithilfe von Nachrichtenattributen strukturierte Metadaten (wie Zeitstempel, Geodaten, Signaturen und Identifikatoren) in Nachrichten einzubeziehen. Jede Nachricht kann bis zu 10 Attribute haben. Nachrichtenattribute sind optional und separat vom Nachrichtentext (werden aber mit diesem versendet). Ihr Konsument kann Nachrichtenattribute für die Verarbeitung einer Nachricht auf eine bestimmte Weise verwenden, ohne erst den Nachrichtentext verarbeiten zu müssen. Weitere Informationen über das Senden von Nachrichten mit Attributen mithilfe der Amazon-SQS-Konsole finden Sie unter Senden einer Nachricht mit Attributen mithilfe von Amazon SQS.
Anmerkung
Verwechseln Sie Nachrichtenattribute nicht mit Nachrichtensystemattributen: Während Sie Nachrichtenattribute verwenden können, um benutzerdefinierte Metadaten an Amazon SQS-Nachrichten für Ihre Anwendungen anzuhängen, können Sie Nachrichtensystemattribute verwenden, um Metadaten für andere AWS Dienste zu speichern, z. B. AWS X-Ray
Themen
Nachrichtenattributkomponenten
Wichtig
Alle Komponenten eines Nachrichtenattributs sind in der Beschränkung der Nachrichtengröße auf 1 MiB enthalten.
Name, Type, Value und der Nachrichtentext dürfen nicht leer oder null sein.
Jedes Nachrichtenattribut besteht aus den folgenden Komponenten:
-
Name – Der Name des Nachrichtenattributs kann die folgenden Zeichen enthalten:
A-Z,a-z,0-9, Unterstrich (_), Bindestrich (-) und Punkt (.). Beachten Sie die folgenden Einschränkungen:-
Kann bis zu 256 Zeichen lang sein.
-
Darf nicht mit
AWS.oderAmazon.(oder beliebige Varianten in Groß-/Kleinschreibung) beginnen -
Berücksichtigt Groß- und Kleinschreibung
-
Muss unter allen Attributnamen für die Nachricht eindeutig sein
-
Darf nicht mit einem Punkt beginnen oder enden
-
Darf keine Punkte in einer Sequenz enthalten
-
-
Typ – Der Datentyp des Nachrichtenattributs. Unterstützte Typen sind u. a.:
String,NumberundBinary. Sie können auch benutzerdefinierte Informationen für alle Datentypen hinzufügen. Der Datentyp weist dieselben Einschränkungen wie der Nachrichtentext auf (weitere Informationen finden Sie unterSendMessagein der Amazon-Simple-Queue-Service-API-Referenz). Darüber hinaus gelten die folgenden Einschränkungen:-
Kann bis zu 256 Zeichen lang sein.
-
Berücksichtigt Groß- und Kleinschreibung
-
-
Value – Der Wert des Nachrichtenattributs. Für den Datentyp
Stringunterliegen die Attributwerte denselben Beschränkungen wie der Nachrichtentext.
Datentypen für Nachrichtenattribute
Über den Datentyp des Nachrichtenattributs wird Amazon SQS angewiesen, wie die entsprechenden Nachrichtenattributwerte verarbeitet werden. Beispiel: Wenn der Typ Number ist, überprüft Amazon SQS numerische Werte.
Amazon SQS unterstützt die logischen Datentypen String, Number und Binary, mit optionalen benutzerdefinierten Datentypenbezeichnungen im Format ..custom-data-type
-
Zeichenfolge –
String-Attribute können Unicode-Text unter Verwendung beliebiger gültiger XML-Zeichen speichern. -
Zahl –
Number-Attribute können positive oder negative numerische Werte speichern. Zahlen können bis zu 38 Ziffern und Werte von 10^-128 bis 10^+126 umfassen.Anmerkung
Amazon SQS entfernt voranstehende und nachgestellte Nullen.
-
Binär – Binäre Attribute können beliebige binäre Daten speichern, wie etwa komprimierte Daten, verschlüsselte Daten oder Bilder.
-
Benutzerdefiniert – Hängen Sie eine benutzerdefinierte Typenbezeichnung an jeden unterstützten Datentyp an, um einen benutzerdefinierten Datentyp zu erstellen. Beispiel:
-
Number.byte,Number.short,Number.intundNumber.floatkönnen beim Unterscheiden zwischen den Zahlentypen helfen. -
Binary.gifundBinary.pngkönnen beim Unterscheiden zwischen den Dateitypen helfen.
Anmerkung
Amazon SQS interpretiert, validiert oder verwendet die angefügten Daten nicht.
Die benutzerdefinierte Typenbezeichnung unterliegt denselben Beschränkungen wie der Nachrichtentext.
-
Berechnung des MD5-Nachrichtendigests für Nachrichtenattribute
Wenn Sie den verwenden AWS SDK for Java, können Sie diesen Abschnitt überspringen. Die MessageMD5ChecksumHandler-Klasse des SDK für Java unterstützt MD5-Nachrichten-Digests für Amazon-SQS-Nachrichtenattribute.
Wenn Sie entweder die Abfrage-API oder eines der AWS SDKs verwenden, das keine MD5-Nachrichtenübersichten für Amazon SQS-Nachrichtenattribute unterstützt, müssen Sie die folgenden Richtlinien verwenden, um die MD5-Nachrichtenübersichtsberechnung durchzuführen.
Anmerkung
Nehmen Sie bei der Berechnung des MD5-Nachrichten-Digest immer benutzerdefinierte Suffixe des Datentyps mit auf.
-Übersicht
Im Folgenden finden Sie eine Übersicht über den MD5-Nachrichtendigest-Berechnungsalgorithmus:
-
Er sortiert alle Nachrichtenattribute in aufsteigender Reihenfolge nach ihrem Namen.
-
Er verschlüsselt die einzelnen Teile der Attribute (
Name,TypeundValue) im Puffer. -
Er berechnet den Nachrichtendigest des gesamten Puffers.
In der folgenden Abbildung ist die Verschlüsselung des MD5-Nachrichtendigests für ein einzelnes Nachrichtenattribut dargestellt:
So verschlüsseln Sie ein einzelnes SQS-Nachrichtenattribut
-
Codieren Sie den Namen: die Länge (4 Byte) und die UTF-8 Byte des Namens.
-
Codieren Sie den Datentyp: die Länge (4 Byte) und die UTF-8 Byte des Datentyps.
-
Verschlüsselung des Übertragungstyps (
StringoderBinary) des Werts (1 Byte).Anmerkung
Für die logischen Datentypen
StringundNumberwird der ÜbertragungstypStringverwendet.Für den logischen Datentyp
Binarywird der ÜbertragungstypBinaryverwendet.-
Verwenden Sie für den Transporttyp
Stringdie Verschlüsselung 1. -
Verwenden Sie für den Transporttyp
Binarydie Verschlüsselung 2.
-
-
Verschlüsselung des Attributwerts
-
Codieren Sie für den
StringTransporttyp den Attributwert: die Länge (4 Byte) und die UTF-8 Byte des Werts. -
Verschlüsselung des Attributwerts für den Übertragungstyp
Binary: Länge (4 Bytes) und Rohbytes des Werts.
-
Attribute des Amazon-SQS-Nachrichtensystems
Während Sie Nachrichtenattribute verwenden können, um Amazon-SQS-Nachrichten benutzerdefinierte Metadaten für Ihre Anwendungen anzufügen, können Sie Nachrichtensystemattribute verwenden, um Metadaten für andere AWS
-Services wie AWS X-Ray zu speichern. Für weitere Informationen siehe den MessageSystemAttribute-Anforderungsparameter der API-Aktionen SendMessage und SendMessageBatch, das AWSTraceHeader-Attribut der API-Aktion ReceiveMessage sowie den MessageSystemAttributeValue-Datentyp in der Amazon-Simple-Queue-Service-API-Referenz.
Nachrichtensystemattribute sind genau wie Nachrichtenattribute strukturiert, mit folgenden Ausnahmen:
-
Derzeit wird
AWSTraceHeaderals einziges Nachrichtensystemattribut unterstützt. Sein TypStringund sein Wert müssen eine korrekt formatierte AWS X-Ray Trace-Header-Zeichenfolge sein. -
Die Größe eines Nachrichtensystemattributs zählt nicht zur Gesamtgröße einer Nachricht.