All Products
Search
Document Center

:QueueMessage

Last Updated:Nov 09, 2025

QueueMessage mendefinisikan pesan-pesan yang dikirim ke Simple Message Queue (sebelumnya MNS) antrian. Anda dapat menentukan isi, periode penundaan, dan prioritas pesan saat mengirim pesan ke antrian SMQ. Topik ini menjelaskan parameter, tipe, dan status dari pesan antrian.

Parameter

  • MessageId

    • ID unik dari pesan.

    • Parameter ini dikembalikan ketika Anda memanggil operasi SendMessage, BatchSendMessage, ReceiveMessage, BatchReceiveMessage, PeekMessage, atau BatchPeekMessage.

    • Setiap pesan dalam antrian memiliki ID unik.

    • Ketika pesan dikirim ke antrian, SMQ menghasilkan ID untuk pesan tersebut. Setelah dihasilkan, ID tidak dapat diubah dan dapat digunakan untuk verifikasi data.

  • NextVisibleTime

    • Waktu ketika pesan dapat dikonsumsi. Nilai ini adalah timestamp UNIX dalam milidetik sejak epoch 1 Januari 1970, 00:00:00 UTC.

    • Parameter ini dikembalikan ketika Anda memanggil operasi ReceiveMessage, BatchReceiveMessage, atau ChangeMessageVisibility.

  • ReceiptHandle

    • Tanda terima dari pesan.

    • Parameter ini dikembalikan ketika Anda memanggil operasi ReceiveMessage, BatchReceiveMessage, atau ChangeMessageVisibility.

    • Anda dapat menggunakan tanda terima untuk memodifikasi atau menghapus pesan dalam status Inactive. Tanda terima valid hingga waktu yang ditentukan oleh parameter NextVisibleTime. Jika digunakan setelah waktu tersebut, SMQ akan mengembalikan pesan kesalahan MessageNotExist.

    • Setiap tanda terima hanya dapat digunakan sekali. Jika status pesan berubah, tanda terima tersebut kedaluwarsa.

  • MessageBody

    • Isi dari pesan.

    • Parameter ini dikembalikan ketika Anda memanggil operasi ReceiveMessage, BatchReceiveMessage, PeekMessage, atau BatchPeekMessage.

  • MessageBodyMD5

    • Hash MD5 dari isi pesan.

    • Parameter ini dikembalikan ketika Anda memanggil operasi SendMessage, BatchSendMessage, ReceiveMessage, BatchReceiveMessage, PeekMessage, atau BatchPeekMessage.

  • EnqueueTime

    • Waktu ketika pesan dikirim ke antrian. Nilai ini adalah timestamp UNIX dalam milidetik sejak epoch 1 Januari 1970, 00:00:00 UTC.

    • Parameter ini dikembalikan ketika Anda memanggil operasi ReceiveMessage, BatchReceiveMessage, PeekMessage, atau BatchPeekMessage.

  • FirstDequeueTime

    • Waktu ketika pesan pertama kali dikonsumsi. Nilai ini adalah timestamp UNIX dalam milidetik sejak epoch 1 Januari 1970, 00:00:00 UTC.

    • Parameter ini dikembalikan ketika Anda memanggil operasi ReceiveMessage, BatchReceiveMessage, PeekMessage, atau BatchPeekMessage.

    • Jika pesan belum pernah dikonsumsi, nilai parameter ini sama dengan nilai parameter EnqueueTime.

  • DequeueCount

    • Jumlah total kali pesan dikonsumsi.

    • Parameter ini dikembalikan ketika Anda memanggil operasi ReceiveMessage, BatchReceiveMessage, PeekMessage, atau BatchPeekMessage.

  • Priority

    • Prioritas dari pesan. Nilai valid: 1 hingga 16. Nilai 1 menunjukkan prioritas tertinggi.

    • Parameter ini dikembalikan ketika Anda memanggil operasi ReceiveMessage, BatchReceiveMessage, PeekMessage, atau BatchPeekMessage.

    • Jika antrian berisi pesan dengan prioritas berbeda, pesan dengan prioritas lebih tinggi dapat dikonsumsi lebih awal ketika Anda memanggil operasi ReceiveMessage.

    • SMQ tidak menjamin urutan konsumsi pesan karena fitur striping data.

Tipe Pesan

Pesan tertunda

  • Setelah pesan tertunda dikirim ke antrian, pesan tersebut tidak dapat dikonsumsi sampai periode yang ditentukan oleh parameter DelaySeconds berakhir.

  • Anda dapat menentukan parameter DelaySeconds untuk antrian atau saat memanggil operasi SendMessage atau BatchSendMessage.

Status Pesan

  • Ketika pesan standar dikirim ke antrian standar, pesan tersebut berada dalam status Active. Setelah diterima, pesan masuk ke status Inactive selama periode VisibilityTimeout. Jika tidak dikonsumsi dalam periode tersebut, pesan kembali ke status Active. Jika dihapus, pesan masuk ke status Deleted.

  • Ketika pesan standar dikirim ke antrian tertunda, pesan berada dalam status Delayed. Setelah periode DelaySeconds berakhir, pesan masuk ke status Active.

  • Ketika pesan tertunda dikirim ke antrian, pesan berada dalam status Delayed. Setelah periode DelaySeconds berakhir, pesan berubah menjadi status Active.

  • Periode maksimum penyimpanan pesan dalam antrian ditentukan oleh parameter MessageRetentionPeriod. Setelah periode tersebut berakhir, pesan masuk ke status Expired dan didaur ulang oleh pengumpul sampah.

  • Hanya pesan dalam status Active yang dapat diterima.