Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memecahkan masalah pembatasan FIFO di Amazon SQS
Secara default, antrian FIFO mendukung 300 transaksi per detik, per tindakan API untuk, SendMessage
, ReceiveMessage
dan. DeleteMessage
Permintaan lebih dari 300 TPS mendapatkan ThrottlingException
kesalahan bahkan jika pesan dalam antrian tersedia. Untuk mengurangi ini, Anda dapat menggunakan metode berikut:
-
Mengaktifkan throughput tinggi untuk antrian FIFO di Amazon SQS.
-
Gunakan tindakan batch Amazon SQS API
SendMessageBatch
DeleteMessageBatch
, danChangeMessageVisibilityBatch
untuk meningkatkan batas TPS hingga 3.000 pesan per detik per tindakan API, dan untuk mengurangi biaya. UntukReceiveMessage
API, aturMaxNumberofMessages
parameter untuk menerima hingga sepuluh pesan per transaksi. Untuk informasi selengkapnya, lihat Tindakan batch Amazon SQS. -
Untuk antrian FIFO dengan throughput tinggi, ikuti rekomendasi untuk mengoptimalkan pemanfaatan partisi. Kirim pesan dengan grup pesan yang sama IDs dalam batch. Hapus pesan, atau ubah nilai batas waktu visibilitas pesan dalam batch dengan pegangan tanda terima dari permintaan API yang sama
ReceiveMessage
. -
Tingkatkan jumlah
MessageGroupId
nilai unik. Hal ini memungkinkan distribusi merata di seluruh partisi antrian FIFO. Untuk informasi selengkapnya, lihat Menggunakan ID grup pesan Amazon SQS.
Untuk informasi selengkapnya, lihat Mengapa antrean Amazon SQS FIFO saya tidak menampilkan semua pesan atau pesan di grup pesan lain