Alibaba Cloud Simple Message Queue (SMQ, sebelumnya MNS) adalah layanan pesan terdistribusi yang dirancang untuk skalabilitas, efisiensi tinggi, keandalan, keamanan, dan ketersediaan. SMQ memungkinkan pengembang mentransfer data dan notifikasi antar komponen terdistribusi dalam suatu aplikasi, membantu membangun sistem yang longgar terhubung. Layanan ini mendukung model pesan berbasis antrian maupun berbasis topik.
Metode akses
SMQ mendukung akses melalui Internet dan Virtual Private Cloud (VPC). Saat menggunakan VPC, Anda dapat mengonfigurasi blok CIDR, tabel rute, dan gerbang, serta mengakses sumber daya Alibaba Cloud seperti Elastic Compute Service (ECS), ApsaraDB RDS, dan Server Load Balancer (SLB) di dalam VPC Anda.
Model pesan berbasis antrian
Model pesan berbasis antrian menyediakan konsumsi pesan yang sangat andal dan konkuren. Dalam model ini, setiap pesan dalam antrian hanya dapat dikonsumsi oleh satu klien.
Antrian SMQ dapat dibayangkan seperti restoran sushi berjalan: koki (produsen) menyiapkan hidangan sushi (pesan) dan meletakkannya di ban berjalan. Setiap hidangan (pesan) bersifat unik, dan pelanggan (konsumen) memilih serta mengonsumsi hidangan sushi pilihan mereka dari ban berjalan tersebut.
Alur pesan berbasis antrian
Gambar berikut, Alur pesan berbasis antrian, menggambarkan proses perpesanan berbasis antrian. Dalam alur ini, produsen mengirim pesan ke antrian, dan konsumen mengambil pesan dari antrian tersebut.
Gambar 1. Alur pesan berbasis antrian
Fitur model pesan berbasis antrian
Beberapa mode antrian
Antrian standar dan antrian tertunda (delayed queues) didukung. Sesuaikan parameter antrian untuk memenuhi berbagai kebutuhan bisnis.
Permintaan akses konkuren
Antrian SMQ secara efisien menangani banyak permintaan konkuren dari beberapa produsen dan konsumen. Begitu sebuah pesan ditarik dari antrian, pesan tersebut tidak dapat diambil lagi dalam periode tertentu. Anda memiliki fleksibilitas untuk menyesuaikan pengaturan konkurensi berdasarkan beban kerja Anda.
Jaminan pengiriman pesan
SMQ memastikan bahwa setiap pesan dalam antrian dapat dikonsumsi setidaknya sekali selama periode validitasnya. SMQ terintegrasi dengan sistem akun Alibaba Cloud untuk mengisolasi sumber daya antar pengguna, sehingga hanya entitas yang berwenang yang dapat mengakses pesan dalam antrian SMQ.
Manajemen log
Anda dapat melihat log terperinci untuk setiap pesan, termasuk semua catatan yang dihasilkan saat pesan dikirim, diterima, atau dihapus sepanjang siklus hidupnya. Untuk informasi lebih lanjut, lihat Manajemen log.
Cloud Monitor
Lihat informasi antrian dan sesuaikan aturan peringatan di konsol Cloud Monitor. Cloud Monitor akan memberi tahu Anda tentang masalah tak terduga apa pun. Untuk informasi lebih lanjut, lihat Cloud Monitor.
Model pesan berbasis topik
Model pesan berbasis topik mendukung perpesanan publikasi-langganan satu-ke-banyak. Dengan topik SMQ, satu penerbit dapat mengirim pesan ke banyak subscriber, dan pesan dapat dikirimkan menggunakan berbagai metode.
Sebuah topik dapat diibaratkan sebagai surat kabar yang dilanggan oleh banyak pelanggan. Ketika edisi baru dirilis, para subscriber (termasuk mitra kantor pos) dapat memilih cara menerima edisi tersebut, misalnya:
Meminta kurir surat mengantarkan surat kabar langsung ke alamat tertentu, seperti rumah mereka.
Mengambil sendiri surat kabar tersebut di kios koran terdekat, tempat kurir terlebih dahulu mengantarkan koran secara massal.
Alur pesan berbasis topik
Seperti yang ditunjukkan dalam alur pesan berbasis topik:
Sebuah topik memiliki beberapa langganan yang ditentukan dengan antrian berbeda.
Setelah pesan dipublikasikan ke topik, pesan tersebut didorong ke titik akhir antrian yang ditentukan dalam langganan.
Langganan mendukung penyaringan pesan. Anda dapat menentukan tag untuk langganan guna menyaring pesan.
Jika Anda tidak menentukan tag untuk langganan, pesan akan didorong ke antrian yang ditentukan terlepas dari apakah Anda menentukan tag pesan atau tidak.
Jika Anda menentukan tag untuk langganan, hanya pesan yang memiliki tag tersebut yang dapat didorong ke antrian yang ditentukan.
Gambar 2. Alur pesan berbasis topik
Fitur model pesan berbasis topik
Pesan notifikasi
Server SMQ mendorong pesan ke antrian yang ditentukan. Hal ini menghilangkan polling permintaan yang tidak perlu dan konsumsi sumber daya oleh klien. Anda dapat memaksimalkan penggunaan sumber daya untuk memenuhi kebutuhan bisnis Anda. Anda tidak perlu bergantung pada klien layanan pesan lainnya. Hal ini mencegah ketidakstabilan sistem yang disebabkan oleh pengenalan kode berlebihan. Untuk informasi lebih lanjut, lihat Tanda tangani permintaan yang dikirim ke titik akhir dan Kelola topik.
Jika URL callback tidak tersedia karena jaringan atau alasan lain, Anda dapat mendorong pesan ke antrian SMQ dan mengambil pesan dari antrian tersebut. Anda dapat menggunakan antrian untuk mengonsumsi pesan dari topik. Untuk informasi lebih lanjut, lihat Antrian dan Kirim pesan dari satu klien produsen ke beberapa klien konsumen.
Satu-ke-banyak
Pesan yang dipublikasikan ke topik dapat didorong ke beberapa klien subscriber.SMQ mendorong pesan ke antrian yang ditentukan dalam langganan. Setelah pesan dipublikasikan, pesan tersebut didorong ke beberapa titik akhir. Hal ini memastikan atomisitas publikasi pesan.
Penyaringan pesan berbasis tag
SMQ memungkinkan Anda menggunakan tag untuk menyaring pesan. Anda dapat menentukan tag untuk langganan dan kemudian hanya menerima pesan yang memiliki tag tersebut dari topik. SMQ mendorong pesan ke titik akhir yang ditentukan hanya jika tag-nya sama. Untuk informasi lebih lanjut, lihat Operasi API RESTful tentang topik.
Pengiriman pesan
SMQ mengirim pesan ke antrian. Untuk informasi lebih lanjut, lihat Antrian dan Kirim pesan dari satu klien produsen ke beberapa klien konsumen.
Jaminan pengiriman pesan: Pesan yang dipublikasikan ke topik secara otomatis didorong ke klien subscriber selama periode validitas berdasarkan kebijakan ulang coba dan format konten yang ditentukan. Untuk informasi lebih lanjut, lihat NotifyStrategy.
Format pesan
XML: Pesan dalam format XML dan berisi isi pesan serta atribut pesan.
JSON: Pesan dalam format JSON dan berisi isi pesan serta atribut pesan.
SIMPLIFIED: Isi pesan adalah pesan yang dipublikasikan oleh pengguna. Tidak berisi informasi atribut (ini adalah format sederhana, yaitu format teks). Untuk informasi lebih lanjut, lihat:
Manajemen log
Log dihasilkan saat pesan dipublikasikan ke topik dan kemudian didorong ke titik akhir. Informasi tentang upaya ulang dorong dan hasilnya dicatat dalam log. Anda dapat menggunakan log untuk melihat siklus hidup pesan tersebut. Manajemen log memungkinkan Anda memecahkan masalah dengan mudah. Untuk informasi lebih lanjut, lihat Manajemen log.
Cloud Monitor
Cloud Monitor mencatat pesan yang didorong. Jika satu atau beberapa pesan gagal didorong, Cloud Monitor memungkinkan Anda melacak pengecualian dengan membuat aturan peringatan. Untuk informasi lebih lanjut, lihat Cloud Monitor.