Metadata pesan untuk Amazon SQS - Amazon Simple Queue Service

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Metadata pesan untuk Amazon SQS

Gunakan atribut pesan untuk menambahkan metadata kustom ke pesan Amazon SQS untuk aplikasi Anda. Gunakan atribut sistem pesan untuk menyimpan metadata untuk integrasi dengan lainnya Layanan AWS, seperti. AWS X-Ray

Atribut pesan Amazon SQS

Amazon SQS memungkinkan Anda menyertakan metadata terstruktur (seperti stempel waktu, data geospasial, tanda tangan, dan pengidentifikasi) dengan pesan yang menggunakan atribut pesan. Setiap pesan dapat memiliki hingga 10 atribut. Atribut pesan bersifat opsional dan terpisah dari badan pesan (namun, atribut tersebut dikirim di sampingnya). Konsumen Anda dapat menggunakan atribut pesan untuk menangani pesan dengan cara tertentu tanpa harus memproses isi pesan terlebih dahulu. Untuk informasi tentang mengirim pesan dengan atribut menggunakan konsol Amazon SQS, lihat. Mengirim pesan dengan atribut menggunakan Amazon SQS

catatan

Jangan bingung atribut pesan dengan atribut sistem pesan: Meskipun Anda dapat menggunakan atribut pesan untuk melampirkan metadata kustom ke pesan Amazon SQS untuk aplikasi Anda, Anda dapat menggunakan atribut sistem pesan untuk menyimpan metadata untuk layanan lain, seperti. AWS AWS X-Ray

Komponen atribut pesan

penting

Semua komponen atribut pesan disertakan dalam pembatasan ukuran pesan 256 KB.

Badan pesan Name TypeValue,,, dan pesan tidak boleh kosong atau nol.

Setiap atribut pesan terdiri dari komponen-komponen berikut:

  • Nama - Nama atribut pesan dapat berisi karakter berikut: A -Z, -, a 0 - z9, garis bawah (_), tanda hubung (), dan periode (-). . Pembatasan berikut berlaku:

    • Panjangnya bisa sampai 256 karakter

    • Tidak dapat memulai dengan AWS. atau Amazon. (atau variasi casing apa pun)

    • Peka huruf besar/kecil

    • Harus unik di antara semua nama atribut untuk pesan

    • Tidak boleh dimulai atau diakhiri dengan titik

    • Tidak boleh memiliki periode secara berurutan

  • Jenis - Jenis data atribut pesan. Jenis yang didukung meliputiString,Number, danBinary. Anda juga dapat menambahkan informasi khusus untuk tipe data apa pun. Tipe data memiliki batasan yang sama dengan isi pesan (untuk informasi selengkapnya, lihat SendMessage di Referensi API Layanan Antrian Sederhana Amazon). Selain itu, pembatasan berikut berlaku:

    • Panjangnya bisa sampai 256 karakter

    • Peka huruf besar/kecil

  • Nilai - Nilai atribut pesan. Untuk tipe String data, nilai atribut memiliki batasan yang sama dengan isi pesan.

Tipe data atribut pesan

Tipe data atribut pesan menginstruksikan Amazon SQS cara menangani nilai atribut pesan yang sesuai. Misalnya, jika jenisnyaNumber, Amazon SQS memvalidasi nilai numerik.

Amazon SQS mendukung tipe data logis StringNumber, dan Binary dengan label tipe data kustom opsional dengan format .custom-data-type

  • String - String atribut dapat menyimpan teks Unicode menggunakan karakter XMLyang valid.

  • AngkaNumber atribut dapat menyimpan nilai numerik positif atau negatif. Sebuah angka dapat memiliki hingga 38 digit presisi, dan bisa antara 10^-128 dan 10^+126.

    catatan

    Amazon SQS menghapus angka nol terdepan dan tertinggal.

  • Biner — Atribut biner dapat menyimpan data biner apa pun seperti data terkompresi, data terenkripsi, atau gambar.

  • Kustom - Untuk membuat tipe data kustom, tambahkan label tipe khusus ke tipe data apa pun. Sebagai contoh:

    • Number.byte,Number.short,Number.int, dan Number.float dapat membantu membedakan antara jenis angka.

    • Binary.gifdan Binary.png dapat membantu membedakan antara jenis file.

    catatan

    Amazon SQS tidak menafsirkan, memvalidasi, atau menggunakan data yang ditambahkan.

    Label tipe khusus memiliki batasan yang sama dengan isi pesan.

Menghitung intisari MD5 pesan untuk atribut pesan

Jika Anda menggunakan AWS SDK untuk Java, Anda dapat melewati bagian ini. MessageMD5ChecksumHandlerKelas SDK for Java MD5 mendukung intisari pesan untuk atribut pesan Amazon SQS.

Jika Anda menggunakan API Kueri atau salah satu AWS SDKs yang tidak mendukung intisari MD5 pesan untuk atribut pesan Amazon SQS, Anda harus menggunakan panduan berikut untuk melakukan MD5 perhitungan intisari pesan.

catatan

Selalu sertakan sufiks tipe data kustom dalam perhitungan MD5 message-digest.

Gambaran Umum

Berikut ini adalah ikhtisar algoritma perhitungan intisari MD5 pesan:

  1. Urutkan semua atribut pesan berdasarkan nama dalam urutan menaik.

  2. Encode masing-masing bagian dari setiap atribut (Name,Type, danValue) ke dalam buffer.

  3. Hitung intisari pesan dari seluruh buffer.

Diagram berikut menunjukkan pengkodean intisari MD5 pesan untuk atribut pesan tunggal:

Pengkodean intisari MD5 pesan untuk atribut pesan tunggal.

Untuk menyandikan satu atribut pesan Amazon SQS

  1. Encode nama: panjang (4 byte) dan UTF-8 byte dari nama.

  2. Encode tipe data: panjang (4 byte) dan UTF-8 byte dari tipe data.

  3. Mengkodekan jenis transport (StringatauBinary) dari nilai (1 byte).

    catatan

    Tipe data logis String dan Number menggunakan tipe String transport.

    Tipe data logis Binary menggunakan tipe Binary transport.

    1. Untuk jenis String transportasi, encode 1.

    2. Untuk jenis Binary transportasi, encode 2.

  4. Mengkodekan nilai atribut.

    1. Untuk tipe String transport, encode nilai atribut: panjang (4 byte) dan UTF-8 byte dari nilai.

    2. Untuk tipe Binary transport, encode nilai atribut: panjang (4 byte) dan byte mentah dari nilai.

Atribut sistem pesan Amazon SQS

Meskipun Anda dapat menggunakan atribut pesan untuk melampirkan metadata kustom ke pesan Amazon SQS untuk aplikasi Anda, Anda dapat menggunakan atribut sistem pesan untuk menyimpan metadata untuk AWS layanan lain, seperti. AWS X-Ray Untuk informasi selengkapnya, lihat parameter MessageSystemAttribute permintaan tindakan SendMessage dan SendMessageBatch API, AWSTraceHeader atribut tindakan ReceiveMessage API, dan tipe MessageSystemAttributeValue data di Referensi API Layanan Antrian Sederhana Amazon.

Atribut sistem pesan terstruktur persis seperti atribut pesan, dengan pengecualian berikut:

  • Saat ini, satu-satunya atribut sistem pesan yang didukung adalahAWSTraceHeader. Tipenya harus String dan nilainya harus berupa string header AWS X-Ray jejak yang diformat dengan benar.

  • Ukuran atribut sistem pesan tidak dihitung terhadap ukuran total pesan.