Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Gunakan penggerak ulang antrian huruf mati untuk memindahkan pesan yang tidak dikonsumsi dari antrian huruf mati ke tujuan lain untuk diproses. Secara default, redrive antrian huruf mati memindahkan pesan dari antrian huruf mati ke antrian sumber. Namun, Anda juga dapat mengonfigurasi antrian lain sebagai tujuan redrive jika kedua antrian adalah tipe yang sama. Misalnya, jika antrian huruf mati adalah antrian FIFO, antrian tujuan redrive harus berupa antrian FIFO juga. Selain itu, Anda dapat mengonfigurasi kecepatan redrive untuk mengatur kecepatan di mana Amazon SQS memindahkan pesan.
catatan
Ketika pesan dipindahkan dari antrian FIFO ke DLQ FIFO, ID deduplikasi pesan asli akan diganti dengan ID pesan asli. Ini untuk memastikan bahwa deduplikasi DLQ tidak akan mencegah penyimpanan dua pesan independen yang kebetulan berbagi ID deduplikasi.
Antrian surat mati menggerakkan ulang pesan sesuai urutan penerimaannya, dimulai dengan pesan tertua. Namun, antrian tujuan menyerap pesan yang digerakkan ulang, serta pesan baru dari produsen lain, sesuai dengan urutan penerimaannya. Misalnya, jika produser mengirim pesan ke antrian FIFO sumber saat secara bersamaan menerima pesan yang digerakkan ulang dari antrian surat mati, pesan yang digerakkan ulang akan terjalin dengan pesan baru dari produser.
catatan
Tugas redrive mengatur ulang periode retensi. Semua pesan yang digerakkan ulang dianggap pesan baru dengan pesan baru messageID
dan ditetapkan ke pesan enqueueTime
yang digerakkan ulang.
Mengonfigurasi redrive antrian huruf mati untuk antrean standar yang ada menggunakan Amazon SQS API
Anda dapat mengonfigurasi redrive antrian huruf mati menggunakan tindakanStartMessageMoveTask
,ListMessageMoveTasks
, dan API: CancelMessageMoveTask
Tindakan API | Deskripsi |
---|---|
Memulai tugas asinkron untuk memindahkan pesan dari antrian sumber tertentu ke antrian tujuan tertentu. |
|
Mendapat tugas pergerakan pesan terbaru (hingga 10) di bawah antrian sumber tertentu. |
|
Membatalkan tugas pergerakan pesan tertentu. Pergerakan pesan hanya dapat dibatalkan ketika status saat ini sedang BERJALAN. |
Mengonfigurasi redrive antrian huruf mati untuk antrean standar yang ada menggunakan konsol Amazon SQS
Buka konsol Amazon SQS di. https://console.aws.amazon.com/sqs/
-
Di panel navigasi, pilih Antrian.
-
Pilih nama antrian yang telah Anda konfigurasikan sebagai antrian huruf mati.
-
Pilih Mulai DLQ redrive.
-
Di bawah konfigurasi Recrive, untuk tujuan Pesan, lakukan salah satu hal berikut:
-
Untuk mengarahkan ulang pesan ke antrean sumbernya, pilih Recrive to source queue (s).
-
Untuk mengarahkan ulang pesan ke antrian lain, pilih Recrive ke tujuan kustom. Kemudian, masukkan Nama Sumber Daya Amazon (ARN) dari antrian tujuan yang ada.
-
-
Di bawah Pengaturan kontrol kecepatan, pilih salah satu dari berikut ini:
-
Sistem dioptimalkan - Dorong ulang pesan antrian huruf mati dengan jumlah maksimum pesan per detik.
-
Kecepatan maks khusus - Dorong ulang pesan antrian huruf mati dengan kecepatan maksimum pesan per detik khusus. Tarif maksimum yang diizinkan adalah 500 pesan per detik.
-
Disarankan untuk memulai dengan nilai kecil untuk kecepatan maks Kustom dan memverifikasi bahwa antrian sumber tidak kewalahan dengan pesan. Dari sana, secara bertahap tingkatkan nilai kecepatan maks Kustom, terus memantau status antrian sumber.
-
-
-
Setelah Anda selesai mengonfigurasi redrive antrian huruf mati, pilih Recrive messages.
penting
Amazon SQS tidak mendukung pemfilteran dan modifikasi pesan saat mengarahkan ulang pesan dari antrian huruf mati.
Tugas redrive antrian huruf mati dapat berjalan maksimal 36 jam. Amazon SQS mendukung maksimal 100 tugas redrive aktif per akun.
-
Jika Anda ingin membatalkan tugas redrive pesan, pada halaman Detail untuk antrian Anda, pilih Batalkan drive ulang DLQ. Saat membatalkan redrive pesan yang sedang berlangsung, pesan apa pun yang telah berhasil dipindahkan ke antrian tujuan pindahnya akan tetap berada dalam antrean tujuan.
Mengkonfigurasi izin antrian untuk redrive antrian huruf mati
Anda dapat memberi pengguna akses ke tindakan antrean huruf mati tertentu dengan menambahkan izin ke kebijakan Anda. Izin minimum yang diperlukan untuk redrive antrian huruf mati adalah sebagai berikut:
Izin Minimum | Metode API yang diperlukan |
---|---|
Untuk memulai redrive pesan |
|
Untuk membatalkan redrive pesan yang sedang berlangsung |
|
Untuk menampilkan status pemindahan pesan |
|
Untuk mengonfigurasi izin untuk pasangan antrian terenkripsi (antrian sumber dengan antrian huruf mati)
Gunakan langkah-langkah berikut untuk mengonfigurasi izin minimum untuk redrive antrian huruf mati (DLQ):
-
Buka konsol IAM di https://console.aws.amazon.com/iam/
. -
Di panel navigasi, pilih Kebijakan.
-
Buat kebijakan baru dan tambahkan izin berikut. Lampirkan kebijakan ke pengguna IAM atau peran yang akan melakukan operasi redrive.
-
Izin untuk DLQ (antrian sumber):
-
sqs:StartMessageMoveTask
-
sqs:CancelMessageMoveTask
-
sqs:ListMessageMoveTasks
-
sqs:ReceiveMessage
-
sqs:DeleteMessage
-
sqs:GetQueueAttributes
-
sqs:ListDeadLetterSourceQueues
-
Tentukan ARN Sumber Daya dari DLQ (antrian sumber) (misalnya, “arn:aws:sqs::: “).
<DLQ_region>
<DLQ_accountId>
<DLQ_name>
-
-
Izin untuk antrian tujuan:
-
sqs:SendMessage
-
Tentukan
Resource ARN
antrian tujuan (misalnya, “arn:aws:sqs: “).<DestQueue_region>:<DestQueue_accountId>:<DestQueue_name>
-
-
Izin untuk kunci KMS:
-
kms:Decrypt
(Diperlukan untuk mendekripsi pesan di DLQ.) -
kms:GenerateDataKey
(Diperlukan untuk mengenkripsi pesan dalam antrian tujuan.)-
Resource
ARNs:-
ARN dari kunci KMS digunakan untuk mengenkripsi pesan di DLQ (antrian sumber) (misalnya, “arn:aws:kms: ::key/ “).
<region>
<accountId>
<SourceQueueKeyId>
-
ARN dari kunci KMS digunakan untuk mengenkripsi pesan dalam antrian tujuan (misalnya, “arn:aws:kms: ::key/ “).
<region>
<accountId>
<DestinationQueueKeyId>
-
-
-
Kebijakan akses Anda harus menyerupai yang berikut:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sqs:StartMessageMoveTask", "sqs:CancelMessageMoveTask", "sqs:ListMessageMoveTasks", "sqs:ReceiveMessage", "sqs:DeleteMessage", "sqs:GetQueueAttributes", "sqs:ListDeadLetterSourceQueues" ], "Resource": "arn:aws:sqs:
<DLQ_region>
:<DLQ_accountId>
:<DLQ_name>
", "Condition": { "StringEquals": { "aws:ResourceTag/QueueRole": "source" } } }, { "Effect": "Allow", "Action": "sqs:SendMessage", "Resource": "arn:aws:sqs:<DestQueue_region>
:<DestQueue_accountId>
:<DestQueue_name>
", "Condition": { "StringEquals": { "aws:ResourceTag/QueueRole": "destination" } } }, { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": [ "arn:aws:kms:<region>
:<accountId>
:key/<SourceQueueKeyId>
", "arn:aws:kms:<region>
:<accountId>
:key/<DestQueueKeyId>
" ] } ] } -
Untuk mengonfigurasi izin menggunakan pasangan antrian yang tidak terenkripsi (antrian sumber dengan antrian huruf mati)
Ikuti langkah-langkah ini untuk mengonfigurasi izin minimum yang diperlukan untuk menangani antrian huruf mati (DLQ) standar yang tidak terenkripsi. Izin minimum yang diperlukan adalah menerima, menghapus, dan mendapatkan atribut dari antrian huruf mati, dan mengirim atribut ke antrian sumber.
-
Buka konsol IAM di https://console.aws.amazon.com/iam/
. -
Di panel navigasi, pilih Kebijakan.
-
Buat kebijakan baru dan tambahkan izin berikut. Lampirkan kebijakan ke pengguna IAM atau peran yang akan melakukan operasi redrive.
-
Izin untuk DLQ (antrian sumber):
-
sqs:StartMessageMoveTask
-
sqs:CancelMessageMoveTask
-
sqs:ListMessageMoveTasks
-
sqs:ReceiveMessage
-
sqs:DeleteMessage
-
sqs:ListDeadLetterSourceQueues
-
Tentukan ARN Sumber Daya dari DLQ (antrian sumber) (misalnya, “arn:aws:sqs::: “).
<DLQ_region>
<DLQ_accountId>
<DLQ_name>
-
-
Izin untuk antrian tujuan:
-
sqs:SendMessage
-
Tentukan
Resource ARN
antrian tujuan (misalnya, “arn:aws:sqs: “).<DestQueue_region>:<DestQueue_accountId>:<DestQueue_name>
-
Kebijakan akses Anda harus menyerupai yang berikut:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sqs:StartMessageMoveTask", "sqs:CancelMessageMoveTask", "sqs:ListMessageMoveTasks", "sqs:ReceiveMessage", "sqs:DeleteMessage", "sqs:GetQueueAttributes", "sqs:ListDeadLetterSourceQueues" ], "Resource": "arn:aws:sqs:
<DLQ_region>
:<DLQ_accountId>
:<DLQ_name>
", "Condition": { "StringEquals": { "aws:ResourceTag/QueueRole": "source" } } }, { "Effect": "Allow", "Action": "sqs:SendMessage", "Resource": "arn:aws:sqs:<DestQueue_region>
:<DestQueue_accountId>
:<DestQueue_name>
", "Condition": { "StringEquals": { "aws:ResourceTag/QueueRole": "destination" } } } ] } -